すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:送信先 Logstore に予期しないデータが存在する場合

最終更新日:May 19, 2026

変換済みのデータを送信先 Logstore に送信すると、予期しないデータが含まれている場合があります。本トピックでは、この問題の解決方法について説明します。

website_log という名前の Logstore には 5,000 件のログエントリが含まれています。そのうち 1,000 件は SourceIP192.0.2.54、1,000 件は SourceIP192.0.2.28、1,000 件は SourceIP192.0.2.136 です。残りの 2,000 件は他の SourceIP 値を持っています。これらのエントリを変換し、異なる送信先 Logstore に送信したいとします。

  • 変換要件

    • SourceIP192.0.2.54 のログエントリを、54_log という名前の Logstore に送信します。

    • SourceIP192.0.2.28 のログエントリを、28_log という名前の Logstore に送信します。

    • SourceIP192.0.2.136 のログエントリを、136_log という名前の Logstore に送信します。

  • 期待される結果

    • 54_log Logstore には 1,000 件のログエントリが含まれ、すべてのエントリの SourceIP192.0.2.54 です。

    • 28_log Logstore には 1,000 件のログエントリが含まれ、すべてのエントリの SourceIP192.0.2.28 です。

    • 136_log Logstore には 1,000 件のログエントリが含まれ、すべてのエントリの SourceIP192.0.2.136 です。

  • 変換文

    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"))
  • ストレージターゲット

    3 つのストレージターゲット (54-target(デフォルト)、28-target、および 136-target) を設定します。これらのターゲットは、それぞれ sls-test プロジェクト内の 54_log28_log、および 136_log Logstore にデータをルートします。

  • 実際の結果

    • (予期しない)54_log Logstore には 3,000 件のログエントリが含まれています。SourceIP192.0.2.54 の期待されるログに加え、他の SourceIP 値を持つログも含まれています。

    • (期待どおり)28_log Logstore には 1,000 件のログエントリが含まれ、すべてのエントリの SourceIP192.0.2.28 です。

    • (期待どおり)136_log Logstore には 1,000 件のログエントリが含まれ、すべてのエントリの SourceIP192.0.2.136 です。

  • 原因

    e_output 関数の条件に一致するログは、対応する送信先 Logstore に送信されます。ただし、Simple Log Service は、いずれのルールにも一致しないログを自動的にデフォルトのストレージターゲットに送信します。この例では、デフォルトターゲット (54-target) が一致しなかったログを 54_log Logstore にルートしています。

  • ソリューション

    変換文の末尾に e_drop() 関数を追加します。この関数により、一致しなかったすべてのログが破棄されます。

    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()