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

Simple Log Service:Amazon S3 から Simple Log Service へのデータインポート

最終更新日:Apr 01, 2026

Amazon S3 から Simple Log Service (SLS) へログファイルをインポートし、クエリ、分析、および処理を行います。SLS は、個々の S3 オブジェクトを最大 5 GB までインポートすることをサポートしており、この制限は圧縮ファイルの場合、展開後のファイルサイズに適用されます。

前提条件

  • ログファイルが Amazon S3 にアップロードされていること。

  • プロジェクトと Logstore が作成されていること。詳細については、「プロジェクトの管理」および「Logstore の作成」をご参照ください。

  • カスタム権限:

    • 次に示す例のように、S3 リソースを管理する権限を付与するカスタムポリシーを作成します。詳細については、「AWS でのカスタム権限の作成」をご参照ください。

      説明

      SLS にオブジェクトをインポートするには、S3 のカスタム権限を構成する必要があります。

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "s3:GetObject",
              "s3:ListBucket"
            ],
            "Resource": [
              "arn:aws:s3:::your_bucket_name",
              "arn:aws:s3:::your_bucket_name/*"
            ]
          }
        ]
      }
    • Amazon Simple Queue Service (SQS) リソースを管理する権限を付与するカスタムポリシーを作成します。詳細については、「AWS でのカスタム権限の作成」をご参照ください。

      説明

      これは、SQS を有効にする場合にのみ必要です。

      {
        "Effect": "Allow",
        "Action": [
          "sqs:ReceiveMessage",
          "sqs:DeleteMessage",
          "sqs:GetQueueAttributes",
          "kms:Decrypt"
        ],
        "Resource": "*"
      }

データインポート構成の作成

  1. Simple Log Service コンソールにログインします。Simple Log Service コンソール

  2. データのインポート」タブの「データのインポート」エリアで、「S3 - データのインポート」を選択します。

  3. 対象のプロジェクトとログストアを選択し、次に[次へ]をクリックします。

  4. インポート設定を構成します。

    1. [インポート設定] ステップで、以下のパラメーターを設定します。

      パラメーター

      説明

      ジョブ名

      SLS タスクの一意の名前。

      S3 リージョン

      インポートするオブジェクトを格納するバケットが配置されているリージョン。

      AWS AccessKey ID

      AWS にアクセスするために使用される AccessKey ID。

      重要

      ご利用の AccessKey に、対応する AWS リソースにアクセスするための権限があることを確認してください。

      AWS Secret AccessKey

      AWS にアクセスするために使用される Secret AccessKey。

      SQS キュー URL

      SQS キューの識別子。詳細については、「キューとメッセージの識別子」をご参照ください。

      重要

      この機能は、SQS を有効にした後にのみ有効になります。

      ファイルパスプレフィックスフィルター

      ファイルパスプレフィックスで S3 オブジェクトをフィルターし、インポートするオブジェクトを特定します。たとえば、インポートするすべてのオブジェクトが `csv/` ディレクトリにある場合、プレフィックスを `csv/` に設定します。

      このパラメーターを設定しない場合、S3 バケット全体がトラバースされます。

      説明

      このパラメーターを設定してください。バケットに多くのオブジェクトが含まれている場合、バケット全体をトラバースするのは非効率的です。

      ファイルパス正規表現フィルター

      ファイルパス上の正規表現で S3 オブジェクトをフィルターし、インポートするオブジェクトを特定します。パスを含む名前が正規表現に一致するオブジェクトのみがインポートされます。デフォルトでは、このパラメーターは空であり、フィルターは実行されません。

      たとえば、S3 オブジェクトの名前が testdata/csv/bill.csv の場合、正規表現を (testdata/csv/)(.*) に設定します。

      正規表現のデバッグ方法の詳細については、「正規表現のデバッグ」をご参照ください。

      ファイル変更時刻フィルター

      S3 オブジェクトを変更時刻でフィルターし、インポートするオブジェクトを特定します。

      • すべて: 指定された条件を満たすすべての S3 オブジェクトをインポートするには、このオプションを選択します。

      • 特定の時刻から: 特定の時点以降に変更されたファイルをインポートするには、このオプションを選択します。

      • 特定の時間範囲: 特定の時間範囲内に変更されたファイルをインポートする場合は、このオプションを選択します。

      データ形式

      オブジェクトの解析形式。オプションは次のとおりです。

      • CSV: 区切りテキストファイル。最初の行をフィールド名として指定するか、フィールド名を手動で指定します。最初の行を除くすべての行は、ログフィールドの値として解析されます。

      • 単一行 JSON: S3 ファイルは行ごとに読み取られます。各行は JSON オブジェクトとして解析されます。JSON オブジェクト内のフィールドはログフィールドです。

      • 単一行テキストログ: S3 ファイルの各行はログとして解析されます。

      • 複数行テキストログ: S3 オブジェクト内の複数行がログとして解析されます。ログの最初の行または最後の行に一致する正規表現を指定します。

      圧縮形式

      インポートする S3 オブジェクトの圧縮形式。SLS はオブジェクトを解凍し、指定された形式に基づいてデータを読み取ります。

      エンコード形式

      インポートする S3 オブジェクトのエンコード形式。UTF-8 と GBK のみがサポートされています。

      新規ファイルチェックサイクル

      指定された S3 オブジェクトのディレクトリに新しいオブジェクトが継続的に生成される場合、必要に応じて [新規ファイルチェックサイクル] を設定します。このパラメーターを設定すると、データインポートジョブはバックグラウンドで継続的に実行され、新しいオブジェクトが定期的な間隔で自動的に検出および読み取りされます。システムは、S3 オブジェクト内のデータが SLS に重複して書き込まれないことを保証します。

      ターゲットの S3 パスで新しいオブジェクトが生成されなくなった場合、[Never Check] オプションを設定します。その後、インポート ジョブは、指定された条件を満たすすべてのオブジェクトを読み取った後に自動的に終了します。

      ログ時刻構成

      時刻フィールド

      データ形式」を「CSV」または「シングルライン JSON」に設定した場合、タイムフィールドを設定します。このフィールドは、ファイル内の時間情報を表す列の名前であり、SLS へのログインポート時にログのタイムスタンプを指定するために使用されます。

      時刻抽出正規表現

      正規表現を使用してログから時刻を抽出します。

      たとえば、サンプルログが 127.0.0.1 - - [10/Sep/2018:12:36:49 0800] "GET /index.html HTTP/1.1" の場合、[時刻を抽出する正規表現][0-9]{0,2}\/[0-9a-zA-Z]+\/[0-9:,]+ に設定します。

      説明

      他のデータ形式の場合、正規表現を使用して時刻フィールドの一部のみを抽出することもできます。

      時刻フィールド形式

      時刻フィールドの値を解析するための時刻形式を指定します。

      • Java SimpleDateFormat 構文に従う時刻形式を指定します。例: yyyy-MM-dd HH:mm:ss。構文の詳細については、「Class SimpleDateFormat」をご参照ください。一般的な時刻形式の詳細については、「時刻形式」をご参照ください。

      • epoch、epochMillis、epochMicro、および epochNano を含むエポック形式がサポートされています。

      タイムゾーン

      時刻フィールドのタイムゾーンを選択します。時刻フィールド形式がエポックタイプの場合、タイムゾーンを設定する必要はありません。

      ログ時刻の解析時に夏時間を考慮する必要がある場合は、UTC 形式を選択します。それ以外の場合は、GMT 形式を選択します。

      説明

      デフォルトのタイムゾーンは UTC+8 です。

      [データ形式][CSV] に設定した場合、次の表に示す追加のパラメーターを設定する必要があります。

      • CSV 固有のパラメーター

        パラメーター

        説明

        デリミタ

        ログのデリミタを設定します。デフォルト値はカンマ (,) です。

        引用符

        CSV 文字列に使用される引用符文字。

        エスケープ文字

        ログのエスケープ文字を構成します。デフォルト値はバックスラッシュ (\) です。

        最大行数

        [先頭行をフィールド名として使用]」を有効にすると、CSVファイルの先頭行がフィールド名として使用されます。

        カスタムフィールド

        [First Line As Field Name]」をオフにすると、カスタムフィールド名を指定できます。複数のフィールド名はカンマ (,) で区切ります。

        スキップする行数

        スキップするログ行数を指定します。たとえば、これを 1 に設定すると、ログ収集は CSV ファイルの 2 行目から開始されます。

      • 複数行テキストログ固有のパラメーター

        パラメーター

        説明

        正規表現の一致位置

        正規表現が一致する位置を設定します。オプションは次のとおりです。

        • [最初の行に一致する正規表現]: このオプションを選択すると、指定した正規表現がログエントリの最初の行に一致するために使用されます。一致しない行は、指定した最大行数に達するまでログエントリの一部として収集されます。

        • 最後の行に一致する正規表現: 正規表現を使用してログエントリの最後の行に一致させます。一致しない行は、最大行数に達するまで次のログエントリの一部と見なされます。

        正規表現

        ログコンテンツに基づいて正しい正規表現を設定します。

        正規表現のデバッグ方法の詳細については、「正規表現のデバッグ」をご参照ください。

        最大行数

        単一のログエントリの最大行数。

    2. [プレビュー] をクリックして、インポート結果を表示します。

    3. 情報を確認した後、[次へ] をクリックします。

  5. データをプレビューし、インデックスを設定して、[次へ] をクリックします。

    デフォルトでは、SLS でフルテキストインデックスが有効になっています。収集されたログに基づいてフィールドインデックスを手動で作成することもできますし、[自動インデックス生成] をクリックして、SLS が自動的に生成するようにすることもできます。詳細については、「インデックスの作成」をご参照ください。

    重要

    ログをクエリおよび分析するには、フルテキストインデックスまたはフィールドインデックスのいずれかを有効にする必要があります。両方が有効になっている場合、フィールドインデックスが優先されます。

インポート構成の表示

インポート構成を作成した後、コンソールで構成とその統計レポートを表示します。

  1. プロジェクトリストで、ターゲットプロジェクトをクリックします。

  2. [ログストレージ > Logstore] で、対象の Logstore を検索し、データ収集 > データインポート を選択して、設定名をクリックします。

  3. データインポート構成の基本情報と統計レポートを表示します。

    構成を変更したり、インポートを開始または停止したり、構成を削除したりすることもできます。

    警告

    削除操作は元に戻せません。注意して進めてください。

課金

SLS のインポート機能は無料です。ただし、この機能はサービスプロバイダー API へのアクセスを必要とし、トラフィック料金とリクエスト料金が発生します。料金モデルは次のとおりであり、最終的な料金はサービスプロバイダーからの請求書によって決定されます。

image

フィールド

説明

T

1 日あたりのデータインポート総量 (GB)。

p_read

アウトバウンドインターネットトラフィック 1 GB あたりの料金。

p_put

Put リクエスト 10,000 件あたりの料金。

p_get

Get リクエスト 10,000 件あたりの料金。

新規ファイルチェック間隔 (分)。

データインポート構成を作成する際に、新規ファイルチェックサイクルを設定できます。

N

プレフィックスに基づいてバケット内のリスト可能なファイル数。

よくある質問

問題

考えられる原因

ソリューション

プレビューにデータが表示されない。

S3 にオブジェクトがない、オブジェクトにデータが含まれていない、またはフィルター条件を満たすオブジェクトがない。

  • バケットに空でないオブジェクトが含まれているか、CSV ファイルにヘッダー行以外のデータが含まれていることを確認します。オブジェクトにデータが含まれていない場合は、データが利用可能になるまで待ってからインポートしてください。

  • ファイルパスとファイル時刻をフィルターするパラメーターを変更します。

データに文字化けが発生する。

データ形式、圧縮形式、またはエンコード形式が正しく構成されていない。

S3 オブジェクトの形式を確認し、必要に応じてデータ形式、圧縮形式、またはエンコード形式の設定を変更します。

既存の文字化けデータを修正するには、新しい Logstore と新しいインポート構成を作成する必要があります。

SLS のログ時刻が実際のデータ時刻と一致しない。

インポート構成が作成されたときに、ログ時刻フィールドが指定されていないか、時刻形式またはタイムゾーンが正しく構成されていない。

ログ時刻フィールドを指定し、正しい時刻形式とタイムゾーンを設定します。詳細については、「ログ時刻構成」をご参照ください。

インポート後にデータをクエリまたは分析できない。

  • データがクエリ時間範囲外にある。

  • インデックスが構成されていない。

  • インデックスが有効になっていない。

  • クエリするデータの時刻が指定されたクエリ時間範囲内にあることを確認します。

    そうでない場合は、時間範囲を調整して再度クエリを実行します。

  • Logstore のインデックスが構成されていることを確認します。

    そうでない場合は、インデックスを構成します。詳細については、「インデックスの作成」および「インデックスの再作成」をご参照ください。

  • インデックスが構成されており、データ処理インサイトダッシュボード上の正常にインポートされたデータ量が期待どおりである場合、インデックスが有効になっていない可能性があります。インデックスを再作成できます。

インポートされたログエントリ数が期待値より少ない。

一部のオブジェクトには 3 MB を超える単一行データが含まれており、インポート中に破棄されます。詳細については、「収集制限」をご参照ください。

S3 オブジェクトにデータを書き込む際は、単一行データが 3 MB を超えないようにしてください。

オブジェクト数とデータ総量が多いにもかかわらず、インポート速度が期待される最大 80 MB/秒より遅い。

Logstore のシャード数が少なすぎる。詳細については、「パフォーマンス制限」をご参照ください。

Logstore のシャード数が少ない場合は、シャード数を 10 以上に増やしてからレイテンシーを確認してください。詳細については、「シャードの管理」をご参照ください。

一部のオブジェクトがインポートされない。

フィルター条件が正しく設定されていないか、個々のオブジェクトが 5 GB を超えるサイズである。詳細については、「収集制限」をご参照ください。

  • インポートするオブジェクトがフィルター条件を満たしていることを確認します。満たしていない場合は、フィルター条件を変更します。

  • インポートする各オブジェクトのサイズが 5 GB 未満であることを確認してください。

    オブジェクトが 5 GB を超える場合は、サイズを削減してください。

複数行テキストログが正しく解析されない。

最初の行の正規表現または最後の行の正規表現が正しく設定されていない。

最初の行の正規表現または最後の行の正規表現の正確性を確認します。

新規オブジェクトのインポート時に高レイテンシーが発生する。

既存のオブジェクトが多すぎる。これは、ファイルパスプレフィックスフィルターに一致するオブジェクトが多すぎることを意味します。

ファイルパスプレフィックスフィルターに一致するオブジェクトの数が多すぎる場合 (たとえば、100 万を超える場合)、より具体的なプレフィックスを設定し、複数のデータインポートタスクを作成することを推奨します。そうしないと、新規ファイル検出の効率が大幅に低下します。

エラー処理

エラー

説明

ファイル読み取り失敗

ファイルを読み取る際に、ネットワーク例外またはファイルの破損により不完全なファイルエラーが発生した場合、インポートタスクは自動的に再試行します。3 回の再試行後に読み取りが失敗した場合、ファイルはスキップされます。

再試行間隔は新規ファイルチェック間隔と同じです。新規ファイルチェック間隔が [チェックしない] に設定されている場合、再試行間隔は 5 分です。

圧縮形式解析エラー

ファイルを解凍する際に、無効な圧縮形式エラーが発生した場合、インポートタスクはファイルをスキップします。

データ形式解析エラー

データが解析に失敗した場合、データインポートジョブは元のテキストコンテンツをログの content フィールドに保存します。

S3 バケットが存在しない

インポートタスクは定期的に再試行します。バケットが再作成された後、インポートタスクは自動的に再開します。

権限エラー

S3 バケットからのデータ読み取りまたは SLS Logstore へのデータ書き込み時に権限エラーが発生した場合、インポートタスクは定期的に再試行します。権限の問題が修正された後、インポートタスクは自動的に再開します。

権限エラーが発生した場合、インポートタスクはファイルをスキップしません。したがって、権限の問題が修正された後、インポートタスクはバケット内の未処理のオブジェクトから SLS Logstore にデータを自動的にインポートします。