変換されたデータを変換先の Logstore に配布した後、変換先の Logstore にデータが含まれていない場合があります。このトピックでは、このような状況での問題のトラブルシューティング方法について説明します。
シナリオ 1: 変換文で指定されたストレージ宛先が、[データ変換ジョブの作成] パネルで指定されたストレージ宛先と一致しない
ソース Logstore は website_log です。これには、SourceIP が 192.0.2.54 のログが 1,000 件、SourceIP が 192.0.2.28 のログが 1,000 件、SourceIP が 192.0.2.136 のログが 1,000 件、およびこれらの IP アドレスとは異なる SourceIP を持つログが 2,000 件含まれています。ログは変換されます。その後、特定の条件を満たすログが、54_log_target、28_log_target、136_log_target の変換先 Logstore に配布されます。
変換要件
SourceIP が 192.0.2.54 のログを 54_log_target Logstore に配布します。
SourceIP が 192.0.2.28 のログを 28_log_target Logstore に配布します。
SourceIP が 192.0.2.136 のログを 136_log_target Logstore に配布します。
他のすべてのログは破棄します。
変換文
3 つの変換先 Logstore は 54_log、28_log、および 136_log です。
e_if(e_search("SourceIP==192.0.2.54"), e_output(name="54-target", project="sls-test", logstore="54_log")) e_if(e_search("SourceIP==192.0.2.28"), e_output(name="28-target", project="sls-test", logstore="28_log")) e_if(e_search("SourceIP==192.0.2.136"), e_output(name="136-target", project="sls-test", logstore="136_log")) e_drop()保存先
3つの転送先 Logstore は、54_log_target、28_log_target、および 136_log_target です。

変換結果
54_log_target、28_log_target、および 136_log_target の変換先 Logstore にはデータが含まれていません。
原因
project(変換先プロジェクト) とlogstore(変換先 Logstore) パラメーターは、変換文の `e_output` 関数で設定されます。別途、[変換先プロジェクト] と [ターゲットストア] は [データ変換ジョブの作成] パネルで設定されます。これらの設定が競合する場合、変換文で指定された宛先が優先されます。その結果、ログは変換文で指定された 54_log、28_log、および 136_log の変換先 Logstore に配布されます。
解決策
e_output または e_coutput 関数を使用し、name パラメーターのみを設定する場合、変換結果は [データ変換ジョブの作成] パネルで指定されたストレージ宛先に配布されます。
e_output または e_coutput 関数を使用し、project および logstore パラメーターを設定する場合、変換文で指定されたストレージ宛先設定が [データ変換ジョブの作成] パネルで指定されたストレージ宛先設定と一致していることを確認してください。詳細については、「e_output と e_coutput」をご参照ください。
説明変換文に e_drop() 関数が含まれておらず、変換文で複数のストレージ宛先が指定されている場合、システムは文中の条件を満たさず、破棄されなかったすべてのログを、番号 1 のストレージ宛先にある変換先 Logstore に配布します。
e_if(e_search("SourceIP==192.0.2.54"), e_output(name="54-target", project="sls-test", logstore="54_log_target")) e_if(e_search("SourceIP==192.0.2.28"), e_output(name="28-target", project="sls-test", logstore="28_log_target")) e_if(e_search("SourceIP==192.0.2.136"), e_output(name="136-target", project="sls-test", logstore="136_log_target")) e_drop()
シナリオ 2: 変換文が指定されていないか、指定された変換文に e_drop() 関数のみが含まれている
変換文
なし
ストレージ宛先

変換結果
54_log_targetという名前の Logstore にのみデータが含まれています。原因
データ変換ページで変換文が指定されていません。ただし、[データ変換ジョブの作成] パネルで次の操作が実行されます:
ストレージ宛先を指定します。システムは、ソース Logstore のデータをストレージ宛先の変換先 Logstore にコピーします。
複数のストレージ宛先を指定します。システムは、すべてのログを番号 1 のストレージ宛先にある変換先 Logstore に配布します。
データ変換ページで e_drop() 関数のみを含む変換文が指定されています。システムはすべてのログを破棄します。変換先の Logstore にはデータが含まれません。
シナリオ 3: データ変換中にレイテンシーが存在する
データ変換ジョブの設定が有効であることを確認しても、変換先の Logstore にデータが含まれていない場合は、データ変換中にレイテンシーが発生している可能性があります。
データ変換ジョブを開始する前に、次の操作を実行することをお勧めします。詳細については、「パフォーマンスガイド」をご参照ください。
変換の同時実行要件を満たすために、ソース Logstore のデータ量に基づいて、読み書き可能な状態にあるシャードの数を調整します。
変換文の DSL コードのロジックを最適化します。たとえば、正規表現の最適化、条件の削減と最適化、データジョブ実行のフィルタリングなどです。
データ変換後の出力ブロッキングを防ぐために、変換先 Logstore に読み書き可能な状態のシャードを十分に指定します。