Simple Log Service は、収集したデータを Object Storage Service (OSS) バケットにシッピングして、ストレージおよび分析を行うことができます。このトピックでは、新しいバージョンを使用して OSS データシッピングジョブを作成する方法について説明します。
前提条件
プロジェクトと Logstore が作成されていること。 詳細については、「プロジェクトと Logstore の作成」をご参照ください。
データが収集されていること。 詳細については、「データ収集」をご参照ください。
Simple Log Service プロジェクトと同じリージョンにバケットが作成されていること。 詳細については、「コンソールでのバケットの作成」をご参照ください。
サポートされるリージョン
Simple Log Service は、Simple Log Service プロジェクトと同じリージョンの OSS バケットにデータをシッピングします。
OSS へのデータシッピングは、次のリージョンでのみサポートされています: 中国 (杭州)、中国 (上海)、中国 (青島)、中国 (北京)、中国 (張家口)、中国 (フフホト)、中国 (ウランチャブ)、中国 (成都)、中国 (深圳)、中国 (河源)、中国 (広州)、中国 (香港)、シンガポール、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、フィリピン (マニラ)、タイ (バンコク)、日本 (東京)、米国 (シリコンバレー)、および米国 (バージニア)。
データシッピングジョブの作成
Simple Log Service コンソールにログインします。
[プロジェクト] セクションで、目的のプロジェクトをクリックします。

タブで、宛先 Logstore の左側にある [>] アイコンをクリックし、 を選択します。
[OSS (Object Storage Service)] にポインターを合わせ、[+] をクリックします。
[OSS データシッピング] パネルで、次のパラメーターを設定し、[OK] をクリックします。
[シッピングバージョン] を [新しいバージョン] に設定します。 次の表に、主要なパラメーターを示します。
重要OSS データシッピングジョブを作成すると、各シャードのシッピング頻度は、シッピングサイズとシッピング間隔によって決まります。 いずれかの条件が満たされると、シッピングタスクがトリガーされます。
ジョブを作成した後、そのステータスと OSS にシッピングされたデータを確認して、ジョブが期待どおりに実行されていることを確認できます。
パラメーター
説明
ジョブ名
データシッピングジョブの一意の名前。
表示名
データシッピングジョブの表示名。
ジョブの説明
OSS ジョブの説明。
OSS バケット
OSS バケットの名前。
重要バケットはすでに存在し、Write-Once-Read-Many (WORM) 機能が無効になっており、Simple Log Service プロジェクトと同じリージョンにある必要があります。 WORM の詳細については、「リテンションポリシー (WORM)」をご参照ください。
データは、標準、低頻度アクセス、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブのストレージタイプのバケットにシッピングできます。 シッピング後、生成された OSS オブジェクトのストレージタイプは、デフォルトでバケットのストレージタイプと同じになります。 詳細については、「ストレージタイプ」をご参照ください。
標準以外のストレージタイプのバケットには、最小ストレージ期間と最小課金サイズに制限があります。 必要に応じて、宛先バケットのストレージタイプを設定します。 詳細については、「ストレージタイプの比較」をご参照ください。
ファイルシッピングディレクトリ
OSS バケット内のディレクトリ。 ディレクトリ名をスラッシュ (/) またはバックスラッシュ (\) で始めることはできません。
OSS データシッピングジョブを作成すると、Logstore のデータが宛先 OSS バケットのこのディレクトリにシッピングされます。
ファイルサフィックス
ファイルサフィックスを設定しない場合、Simple Log Service はストレージフォーマットと圧縮タイプに基づいてサフィックスを自動的に生成します。 例:
.suffix。パーティションフォーマット
シッピング時間に基づいて OSS バケットにディレクトリを動的に生成するためのフォーマット。 フォーマットをスラッシュ (/) で始めることはできません。 デフォルト値は %Y/%m/%d/%H/%M です。 例については、「パーティションフォーマット」をご参照ください。 パラメーターの詳細については、「strptime API」をご参照ください。
OSS RAM ロールの書き込み
OSS データシッピングジョブに OSS バケットへのデータ書き込みを許可する権限。
デフォルトロール: OSS データシッピングジョブが AliyunLogDefaultRole システムロールを使用して OSS バケットにデータを書き込むことを承認します。 これには、AliyunLogDefaultRole の Alibaba Cloud リソースネーム (ARN) が必要です。 ARN の取得方法については、「デフォルトロールを使用したデータへのアクセス」をご参照ください。
カスタムロール: OSS データシッピングジョブがカスタムロールを使用して OSS バケットにデータを書き込むことを承認します。
まず、カスタムロールに OSS バケットへのデータ書き込み権限を付与する必要があります。 次に、[OSS RAM ロールの書き込み] フィールドに、カスタムロールの ARN を入力します。 ARN の取得方法については、次のいずれかのトピックをご参照ください:
Logstore と OSS バケットが同じ Alibaba Cloud アカウントに属している場合は、「ステップ 2: RAM ロールに OSS バケットへのデータ書き込み権限を付与する」をご参照ください。
Logstore と OSS バケットが異なる Alibaba Cloud アカウントに属している場合は、「ステップ 2: Alibaba Cloud アカウント B の role-b RAM ロールに OSS バケットへのデータ書き込み権限を付与する」をご参照ください。
Logstore RAM ロールの読み取り
OSS データシッピングジョブに Logstore からのデータ読み取りを許可する権限。
デフォルトロール: OSS データシッピングジョブが AliyunLogDefaultRole システムロールを使用して Logstore からデータを読み取ることを承認します。 これには、AliyunLogDefaultRole の ARN が必要です。 ARN の取得方法については、「デフォルトロールを使用したデータへのアクセス」をご参照ください。
カスタムロール: OSS データシッピングジョブがカスタムロールを使用して Logstore からデータを読み取ることを承認します。
まず、カスタムロールに Logstore からのデータ読み取り権限を付与する必要があります。 次に、[Logstore RAM ロールの読み取り] フィールドに、カスタムロールの ARN を入力します。 ARN の取得方法については、次のいずれかのトピックをご参照ください:
Logstore と OSS バケットが同じ Alibaba Cloud アカウントに属している場合は、「ステップ 1: RAM ロールに Logstore からのデータ読み取り権限を付与する」をご参照ください。
Logstore と OSS バケットが異なる Alibaba Cloud アカウントに属している場合は、「ステップ 1: Alibaba Cloud アカウント A の role-a RAM ロールに Logstore からのデータ読み取り権限を付与する」をご参照ください。
ストレージフォーマット
データが OSS にシッピングされた後、さまざまなファイル形式で保存できます。 詳細については、「CSV 形式」、「JSON 形式」、「Parquet 形式」、および「ORC 形式」をご参照ください。
データの圧縮
OSS に保存されるデータの圧縮メソッド。
None (圧縮なし): データは圧縮されません。
snappy: snappy アルゴリズムを使用してデータを圧縮し、OSS バケットのストレージスペースを削減します。 詳細については、「snappy」をご参照ください。
zstd: zstd アルゴリズムを使用してデータを圧縮し、OSS バケットのストレージスペースを削減します。
gzip: gzip アルゴリズムを使用してデータを圧縮し、OSS バケットのストレージスペースを削減します。
配信タグ
タグフィールドは、Simple Log Service の予約済みフィールドです。 詳細については、「予約済みフィールド」をご参照ください。
バッチサイズ
シャード内のログサイズがこの値に達すると、ジョブはデータのシッピングを開始します。 このパラメーターは、各 OSS オブジェクトのサイズ (非圧縮) を制御します。 有効値: 5 MB~256 MB。
説明バッチサイズは、読み取り後のデータのサイズを指し、Simple Log Service にすでに書き込まれているデータのサイズではありません。 データは、バッチ間隔の条件が満たされた後にのみ読み取られ、シッピングされます。
バッチ間隔
シャードからログをシッピングする間隔。 最初のログが到着してからの経過時間がこの値以上になると、ジョブはデータのシッピングを開始します。 デフォルト: 300 秒。 有効値: 300 秒~900 秒。
シッピングレイテンシー
データがシッピングされるまでの遅延。 たとえば、これを 3600 に設定すると、データは 1 時間の遅延でシッピングされます。 2023 年 6 月 5 日 10:00:00 のデータは、2023 年 6 月 5 日 11:00:00 より前に指定された OSS バケットに書き込まれません。 制限の詳細については、「設定項目の制限」をご参照ください。
開始時間範囲
シッピングするデータの時間範囲。 この範囲は、ログが受信された時間に基づいています。 詳細は次のとおりです:
すべて: ジョブは、最初のログが Logstore によって受信された時間から、ジョブが手動で停止されるまでデータをシッピングします。
特定の時間から: ジョブは、指定された時間から、ジョブが手動で停止されるまでデータをシッピングします。
特定の時間範囲: ジョブは指定された開始時間と終了時間内に実行され、終了時間後に自動的に停止します。
説明時間範囲は
__tag__:__receive_time__フィールドで指定されます。 詳細については、「予約済みフィールド」をご参照ください。タイムゾーン
時間のフォーマットに使用されるタイムゾーン。
[タイムゾーン] と [パーティションフォーマット] を設定すると、システムは設定に基づいて OSS バケットにディレクトリを生成します。
OSS データの表示
データが OSS に正常にシッピングされた後、OSS コンソール、API、SDK、またはその他のメソッドを使用してデータにアクセスできます。 詳細については、「ファイルの管理」をご参照ください。
OSS オブジェクトパスは次のフォーマットを使用します:
oss://OSS-BUCKET/OSS-PREFIX/PARTITION-FORMAT_RANDOM-IDこのフォーマットでは、OSS-BUCKET は OSS バケット名、OSS-PREFIX はディレクトリプレフィックス、PARTITION-FORMAT は strptime API を使用してシッピング時間から計算されたパーティションフォーマット、RANDOM-ID はシッピングタスクの一意の ID です。
OSS データシッピングはバッチで実行されます。 各バッチは単一のファイルに書き込まれます。 ファイルパスは、そのバッチ内の最も早い receive_time (データが Simple Log Service に到着した時間) によって決まります。 次の 2 つの状況に注意してください:
リアルタイムデータ (たとえば、5 分ごと) をシッピングする場合、2022 年 1 月 22 日 00:00:00 のシッピングタスクは、2022 年 1 月 21 日 23:55:00 以降にシャードに書き込まれたデータをシッピングします。 したがって、2022 年 1 月 22 日のすべてのデータを分析するには、OSS バケットの 2022/01/22 ディレクトリ内のすべてのオブジェクトを確認する必要があります。 また、2022/01/21 ディレクトリの最後のいくつかのオブジェクトに 2022 年 1 月 22 日のデータが含まれているかどうかも確認する必要があります。
既存データをシッピングする場合、Logstore に含まれるデータが少量であると、単一のシッピングタスクが複数日にまたがるデータをプルする可能性があります。 これにより、2022 年 1 月 23 日のすべてのデータを含むファイルが 2022/01/22 ディレクトリに配置される可能性があります。 その結果、2022/01/23 ディレクトリが空になる場合があります。
パーティションフォーマット
各シッピングタスクは、oss://OSS-BUCKET/OSS-PREFIX/PARTITION-FORMAT_RANDOM-ID のフォーマットの OSS オブジェクトパスに対応します。 次の表は、2022 年 1 月 20 日 19:50:43 に作成されたシッピングタスクのパーティションフォーマットの例を示しています。
OSS バケット | OSS プレフィックス | パーティションフォーマット | ファイルサフィックス | OSS ファイルパス |
test-bucket | test-table | %Y/%m/%d/%H/%M | .suffix | oss://test-bucket/test-table/2022/01/20/19/50_1484913043351525351_2850008.suffix |
test-bucket | log_ship_oss_example | year=%Y/mon=%m/day=%d/log_%H%M | .suffix | oss://test-bucket/log_ship_oss_example/year=2022/mon=01/day=20/log_1950_1484913043351525351_2850008.suffix |
test-bucket | log_ship_oss_example | ds=%Y%m%d/%H | .suffix | oss://test-bucket/log_ship_oss_example/ds=20220120/19_1484913043351525351_2850008.suffix |
test-bucket | log_ship_oss_example | %Y%m%d/ | .suffix | oss://test-bucket/log_ship_oss_example/20220120/_1484913043351525351_2850008.suffix 説明 Hive などのプラットフォームは、このフォーマットの対応する OSS コンテンツを解析できません。 このフォーマットは使用しないでください。 |
test-bucket | log_ship_oss_example | %Y%m%d%H | .suffix | oss://test-bucket/log_ship_oss_example/2022012019_1484913043351525351_2850008.suffix |
Hive や MaxCompute などのビッグデータプラットフォームや Alibaba Cloud Data Lake Analytics (DLA) を使用して OSS データを分析する場合、PARTITION-FORMAT を key=value フォーマットで設定することでパーティション情報を使用できます。 たとえば、パス oss://test-bucket/log_ship_oss_example/year=2022/mon=01/day=20/log_195043_1484913043351525351_2850008.parquet では、パーティションキーは year、mon、day の 3 つのレベルに設定されています。