Commerce CLIを使用したフィードの同期
magento/saas-export パッケージのsaas:resync コマンドを使用すると、Adobe Commerce SaaS サービスのデータ同期を管理できます。
saas:resync コマンドは、products、categories、priceBooksなどのAdobe Commerce Optimizer Connector フィードにも適用されます。 コネクタフィードとインデクサー名の完全なリストについては、 サポートされているフィード を参照してください。Adobeでは、saas:resync コマンドを定期的に使用することはお勧めしません。 コマンドを使用するための一般的なシナリオは次のとおりです。
- 初期同期
- SaaS データスペース IDを変更した後、データを新しいデータスペースに同期する
- トラブルシューティング
var/log/saas-export.log ファイルの同期操作を監視します。
初期同期
aco:config:init コマンドは、すべてのコネクタフィードのインデクサーを無効にすることで、最初の完全な同期をスケジュールします。 同期を有効にする Commerce Optimizer 統合および同期を Commerce Optimizerに管理するを参照してください。コマンドラインからsaas:resyncをトリガーする場合、カタログのサイズに応じて、データを更新するのに数分から数時間かかる場合があります。
フィード同期は任意の順序で実行できます。それらの間にはハード依存関係はありません。 次のシーケンスは、最初にスコープデータから始まります。これは、スコープが他のフィードが参照するストアビューを定義するため、論理的な出発点となります。
bin/magento saas:resync --feed scopesWebsite
bin/magento saas:resync --feed scopesCustomerGroup
bin/magento saas:resync --feed productAttributes
bin/magento saas:resync --feed categories
bin/magento saas:resync --feed products
bin/magento saas:resync --feed prices
bin/magento saas:resync --feed variants
bin/magento saas:resync --feed productoverrides
コマンドオプション
saas:resync コマンドは、様々な同期操作をサポートしています。
- SKUによる部分同期
- 中断された同期を再開
- 同期せずにデータを検証
すべてのコマンドオプションとフラグを表示します。
bin/magento saas:resync --help
例を使用したオプションの説明については、次の節を参照してください。
--feed
必須。 再同期するフィード エンティティを指定します。
bin/magento saas:resync --help件のドキュメントのコマンド オプションとフラグ。 環境内で使用可能なすべてのフィードが一覧表示されるわけではありません。 CLI フィード名、インデクサーID、フィード テーブルを含む完全なフィード リストについては、 サポートされているフィード を参照してください。
productOverridesにはクラウド、オンプレミス、またはCommerce as a Cloud ServiceのAdobe Commerceが必要であり、ordersには受注モジュールが必要です。例:
bin/magento saas:resync --feed products
--by-ids
IDによって特定のエンティティの一部を再同期します。 products、productAttributes、productOverrides、inventoryStockStatus、prices、variantsおよびcategoryPermissions フィードをサポートしています。
デフォルトでは、--by-ids オプションを使用する場合、製品SKU値を使用して値を指定します。 代わりに製品IDを使用するには、--id-type=productId オプションを追加します。
例:
bin/magento saas:resync --feed products --by-ids='ADB102,ADB111,ADB112'
bin/magento saas:resync --feed products --by-ids='1,2,3' --id-type='productId'
--cleanup-feed
SaaSにデータを再入力して送信する前に、フィード インデクサーテーブルをクリーンアップします。 products、productAttributes、productOverrides、inventoryStockStatus、prices、variantsおよびcategoryPermissionsでのみサポートされています。
--dry-run オプションと共に使用すると、操作はすべての項目に対してドライ実行再同期操作を実行します。
cleanup-feed オプションで再同期コマンドを使用すると、ローカルフィードの書き出し状態がクリアされ、同期が不完全になる可能性があります。 例えば、Adobe Commerceでのエンティティの削除は、接続されたCommerce サービスに反映されない可能性があります。また、Adobe Commerceで削除または更新されたにもかかわらず、古いエンティティがリモート Commerce サービス インデックスに残る場合もあります。 このオプションは、SaaS データスペースのクリーンアップ後など、環境の完全な再構築に対してのみ使用します。例:
bin/magento saas:resync --feed products --cleanup-feed
--continue-resync
中断された再同期操作を再開します。 products、productAttributes、productOverrides フィードでのみサポートされています。
例:
bin/magento saas:resync --feed productAttributes --continue-resync
--dry-run
フィードをSaaSに送信せず、フィードのテーブルに保存せずに、フィードの再インデックスプロセスを実行します。 このオプションは、データセットの問題を特定するのに便利です。
ペイロードをvar/log/saas-export.logに保存するEXPORTER_EXTENDED_LOG=1環境変数を追加します。
例:
EXPORTER_EXTENDED_LOG=1 bin/magento saas:resync --feed products --dry-run
特定のフィード項目のテスト
特定のフィード項目をテストするには、拡張ログ コレクションに--by-ids オプションを追加して、var/log/saas-export.log ファイルで生成されたペイロードを確認します。
例:
EXPORTER_EXTENDED_LOG=1 bin/magento saas:resync --feed products --dry-run --by-ids='ADB102,ADB111,ADB112'
すべてのフィード項目をテストする
デフォルトでは、resync --dry-run操作中に送信されたフィードには、新しい項目、または以前に書き出せなかった項目のみが含まれます。 処理するフィード内のすべての項目を含めるには、--cleanup-feed オプションを使用します。
例:
bin/magento saas:resync --feed products --dry-run --cleanup-feed
--no-reindex
インデックス再作成せずに既存のカタログ データをCommerce Servicesに再送信します。 製品関連のフィードではサポートされていません。
動作は書き出しモード によって異なります。
- レガシーモード:すべてのデータを切り捨てずに再送信します。
- 即時モード:オプションは無視され、更新/失敗のみを同期します。
例:
bin/magento saas:resync --feed productAttributes --no-reindex