Simple Log Service を使用すると、ログまたはクエリと分析結果をローカルコンピューターにダウンロードできます。このトピックでは、利用可能なダウンロード方法と手順について説明します。
ダウンロード方法
Simple Log Service コンソール、Cloud Shell、コマンドラインインターフェイス (CLI)、または SDK からログまたはクエリと分析結果をダウンロードできます。
Simple Log Service CLI または SDK を使用する場合、無制限の量のデータをダウンロードできます。ただし、ダウンロードはネットワークの問題によって中断される可能性があります。
コンソールのみが圧縮ダウンロードをサポートしています。
Logstore が取り込みデータ量に応じた課金モードを使用している場合、クエリと分析結果 (SQL 結果) のダウンロードには課金されません。詳細については、「取り込みデータ量に応じた課金」をご参照ください。
Logstore が機能に応じた課金モードを使用している場合、クエリと分析結果 (SQL 結果) をダウンロードする際に専用 SQL 機能が使用されます。これにより、専用 SQL 機能の料金が発生します。課金の詳細については、「機能に応じた課金モデルの課金項目」をご参照ください。
項目 | コンソールからのダウンロード (推奨) | CLI を使用したダウンロード | Cloud Shell を使用したダウンロード | SDK を使用したダウンロード |
データ制限 |
|
|
|
|
デプロイメント | なし。 | Simple Log Service CLI を手動でインストールします。 | 自動デプロイメント。初回使用時には初期化を待つ必要があります。 | Simple Log Service SDK を手動でインストールし、カスタムコードを記述します。 |
権限 | 手動設定。 | 自動設定。 | 手動設定。 | |
専用 SQL | 専用 SQL 機能は、SQL 分析結果をダウンロードするために使用されます。 | 使用されません。 | 使用されません。 | 必要に応じてパラメーターを設定します。 |
アウトバウンドインターネットトラフィック | なし。 | ツールがプロジェクトと同じリージョンにある ECS インスタンスにデプロイされ、Simple Log Service のプライベートエンドポイントを使用する場合、アウトバウンドインターネットトラフィック料金は発生しません。 | プロジェクトが中国 (上海) リージョンにある場合、アウトバウンドインターネットトラフィック料金は発生しません。 | ツールがプロジェクトと同じリージョンにある ECS インスタンスにデプロイされ、Simple Log Service のプライベートエンドポイントを使用する場合、アウトバウンドインターネットトラフィック料金は発生しません。 |
NAS 統合 | なし。 | 必要に応じて手動で設定します。 | 自動設定。 | 必要に応じて手動で設定します。 |
ログを Object Storage Service (OSS) にシッピングしてから OSS からダウンロードすることもできます。ログのシッピング方法の詳細については、「OSS データシッピングジョブの作成 (新バージョン)」をご参照ください。
手順
コンソールからのダウンロード
Simple Log Service を使用すると、コンソールから直接ローカルコンピューターにログまたはクエリと分析結果をダウンロードできます。ダウンロード手順はどちらも同様です。このセクションでは、ログのダウンロードを例として使用します。クエリと分析結果をダウンロードするには、クエリと分析操作を実行し、[グラフ] タブで [クエリ結果のダウンロード] をクリックします。
ログの数が 1 回のダウンロードの制限を超えた場合、最大数のログのみがダウンロードされます。すべてのログをダウンロードするには、クエリの時間範囲を狭めて、ログをバッチでダウンロードします。
[ログエクスポート履歴] ダイアログボックスでダウンロードリストを表示できます。
各 Alibaba Cloud アカウントは、最大 3 つの同時ダウンロード操作をサポートします。ただし、ダウンロードの総数に制限はありません。3 つを超える同時ダウンロードを実行した場合、または複数の RAM ユーザーが同時にダウンロードを実行した場合、エラーが発生することがあります。エラーが発生した場合は、他の操作が完了するのを待ってから再試行してください。
過去 24 時間のエクスポートレコードが保存されます。古いレコードは自動的に削除されます。
ネットワークエラーまたは不正確なクエリが原因でダウンロードタスクが失敗した場合、システムはタスクを自動的に再試行します。3 回再試行してもタスクが失敗する場合、そのステータスは失敗に変わります。
Simple Log Service コンソールにログインします。
[プロジェクト] セクションで、対象のプロジェクトをクリックします。
タブで、対象の Logstore をクリックします。
検索文を入力し、時間範囲を選択します。
詳細については、「ログのクエリと分析のクイックスタート」をご参照ください。
[Raw ログ] タブで、 を選択します。
説明利用可能なログがない場合、[ログのダウンロード] は利用できません。
[ログのダウンロード] ダイアログボックスで、次のパラメーターを設定し、[OK] をクリックします。
パラメーター
説明
タスク名
ダウンロードタスクの名前。
ログ数
ダウンロードするログの数を選択します。
データ形式
CSV および JSON 形式がサポートされています。
CSV を選択した場合、ファイル内の列名は最初の 100 件のログのフィールドに基づいて生成されます。後続のログに新しいフィールドが含まれている場合、新しいフィールドは CSV ファイルの最後の列に JSON 形式で保存されます。最後の列の名前は空です。
JSON を選択した場合、各ログの内容は JSON 形式に変換され、1 行としてファイルに書き込まれます。
引用符
ログ内の特殊文字を囲み、エスケープされないようにするための引用符を選択します。
不正確な結果を許可
[いいえ] を選択すると、クエリ結果が不正確な場合にダウンロードが失敗します。
圧縮方法
サポートされている圧縮方法には、gzip、lz4、zstd があります。ログを圧縮しないことも選択できます。
多くのログをダウンロードする場合は、圧縮することをお勧めします。これにより、ダウンロードサイズと時間を大幅に削減できます。
ソート順
ログのソート順。
[ダウンロードタスク] ダイアログボックスで、タスクの [ステータス] が [成功] に変わるのを待ちます。次に、[ダウンロード] をクリックして、ログをローカルコンピューターに保存します。
また、[Raw Logs] タブで を選択して [ダウンロードタスク] ダイアログボックスを開き、ダウンロードレコードを表示することもできます。

Cloud Shell を使用したダウンロード
Cloud Shell は中国 (上海) リージョンにあります。Logstore が中国 (上海) リージョンにない場合、ログをダウンロードする際にアウトバウンドインターネットトラフィック料金が発生します。料金の詳細については、「料金」をご参照ください。手順の詳細については、「Cloud Shell を使用してログデータをダウンロードする」をご参照ください。
CLI を使用したダウンロード
大量のログをダウンロードするには、CLI を使用できます。
CLI をインストールします。詳細については、「CLI のインストール」をご参照ください。
アカウントの AccessKey ペアを取得します。詳細については、「AccessKey ペア」をご参照ください。
ログをダウンロードするコマンドを取得します。詳細については、「get_log_all」をご参照ください。
たとえば、CLI でダウンロードコマンドを実行できます。コマンドが正常に実行されると、ログは現在のディレクトリの
downloaded_data.txtファイルに自動的にダウンロードされます。aliyunlog log get_log_all --project="aliyun-test-project" --logstore="aliyun-test-logstore" --from_time="2024-07-01 15:33:00+8:00" --to_time="2024-07-09 15:23:00+8:00" --query="status:200|select request_method as method,COUNT(*) as pv group by method order by pv" --region-endpoint="cn-hangzhou.log.aliyuncs.com" --format-output=json --access-id="LT***CyGg" --access-key="8P***zi" >> ./downloaded_data.txt
詳細については、「Simple Log Service CLI の使用」をご参照ください。
SDK を使用したダウンロード
大量のログをダウンロードするには、SDK を使用できます。
ログをダウンロードするための SDK 操作は、ログをクエリするための操作と同じです。
次の Python SDK コードは例を示しています:
import os
import time
from aliyun.log import LogClient
from aliyun.log import GetLogsRequest
# Simple Log Service のエンドポイント。
endpoint = 'cn-qingdao.log.aliyuncs.com'
# 環境変数から AccessKey ID と AccessKey Secret を取得します。
accessKeyId = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID', '')
accessKey = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET', '')
# プロジェクト名。
project = 'your-project-name'
# Logstore 名。
logstore = 'your-logstore-name'
client = LogClient(endpoint, accessKeyId, accessKey)
request = GetLogsRequest("project1", "logstore1", fromTime=int(time()-3600), toTime=int(time()), topic='', query="*", line=100, offset=0, reverse=False)
# または
# request = GetLogsRequest("project1", "logstore1", fromTime="2018-1-1 10:10:10", toTime="2018-1-1 10:20:10", topic='', query="*", line=100, offset=0, reverse=False)
res = client.get_logs(request)
res.log_print()
詳細については、「SDK リファレンス」をご参照ください。
> [ログのダウンロード]