エクスポートした製品.csv ファイルが表示されない
この記事では、目的のエンティティ型をCommerce Admin の.csv ファイルに書き出すと、ファイルが表示されない問題の解決策を提供します。
影響を受ける製品とバージョン
- クラウドインフラストラクチャ上のAdobe Commerce、すべての サポートされているバージョン 。
イシュー
複製する手順
前提条件:秘密鍵をURLに追加 オプションは はい に設定されています。 このオプションは、Stores > Configuration > Advanced > Admin > Securityの下のCommerce管理者で設定されます。
-
管理画面で、システム > データ転送 > 書き出しに移動します。
-
Select
- エンティティの種類:書き出すエンティティ
- 書き出しファイル形式: CSV
- フィールドエンクロージャ:選択を解除します。
-
続行をクリックします。
-
次のメッセージが表示されます:「メッセージがキューに追加されました。ファイルをすぐに取得するのを待ってください」。
期待される結果
書き出された目的のエンティティタイプを含む.csv ファイルは、数分以内にグリッドに表示されます。
実際の結果
書き出された目的のエンティティタイプを含む.csv ファイルは、10分以上でグリッドに表示されません。
原因
Adobe Commerce アプリケーションの一部バージョン 2.3.2の書き出し機能に関する既知の問題。
Solution
この問題には、次の2つの解決策が考えられます。
- 「URLに秘密鍵を追加」オプションを無効にします。
bin/magento queue:consumers:start exportProcessorコマンドを手動で実行し、必要に応じてcronで実行するように設定します。
両方のオプションについて詳しくは、次の段落を参照してください。
「URLに秘密鍵を追加」オプションを無効にする
- 管理画面で、Stores > Configuration > Advanced > Admin > Securityに移動します。
- 「秘密鍵をURLに追加」オプションを 番号 に設定します
- 「設定を保存」をクリックします。
- システム/ツール/キャッシュ管理の下にあるキャッシュをクリーンアップするか、
bin/magento cache:cleanまたは管理者を実行します。
export コマンドを手動で実行し、オプションでcron ジョブとして追加します
書き出しファイルを取得するには、bin/magento queue:consumers:start exportProcessor コマンドを実行します。 これを実行すると、ファイルがグリッドに表示されます。
プロセスをcron ジョブとして追加するには、オプションでCRON_CONSUMERS変数を.magento.env.yaml ファイルに追加する必要があります。
プロセスをcron ジョブとして追加(オプション)
-
cronが設定および設定されていることを確認します。 詳しくは、cron ジョブの設定を参照してください。
-
次のコマンドを実行して、メッセージキューコンシューマーのリストを返します:
./bin/magento queue:consumers:list -
ルートアプリケーションディレクトリの
.magento.env.yamlファイルに以下を追加し、追加するコンシューマーを含めます。 例えば、以下は書き出し処理に必要な消費者です。code language-yaml stage: deploy: CRON_CONSUMERS_RUNNER: cron_run: true max_messages: 1000 consumers: - exportProcessor次に、この更新されたファイルをプッシュして、環境を再デプロイします。 また、開発者ドキュメントの プロジェクトにカスタム cron ジョブを追加することも参照してください。
.magento.env.yaml ファイルが見つからず、削除されたと思われる場合は、新しい.magento.env.yamlを作成する必要があります。 最初は空の場合がありますが、必要に応じてそこに情報を追加できます。 次の記事を参照してください。 デプロイメント用の環境変数を設定および環境変数。詳しくは、開発者ドキュメントを参照してください。.magento.app.yamlを使用してステージング環境と実稼動環境にカスタム cron ジョブを追加する前に、自動cron機能をAdobe Commerce on cloud infrastructureで有効にする必要があります。 この機能が有効になっていない場合は、 サポートチケット を作成して、ジョブを追加します。