Logstore は、ログデータを収集、保存、クエリする Simple Log Service (SLS) のストレージユニットです。
コアコンセプト
LogStore の概要
LogStore は、Simple Log Service (SLS) のデータコンテナです。1 つの プロジェクト 配下に複数の LogStore を作成し、異なるアプリケーションやソースからのログを分離して管理できます。
LogStore 設計のベストプラクティス
ログソースまたはログタイプごとに個別の LogStore を作成します。たとえば、NGINX のアクセスログとエラーログを別々の LogStore に保存します。これにより、ログの混在を防ぎ、後のクエリ、分析、権限分離、コンプライアンス監査が簡素化されます。
レベル3等級保護のコンプライアンスや同様の要件を満たすには、1 つのプロジェクトを統一されたアクセス制御の境界として使用します。そのプロジェクト内に、サーバーログ、データベースログ、コンソール操作ログなどのログタイプごとに個別の LogStore を作成します。この構成は、分類されたストレージと監査トレーサビリティをサポートします。
LogStore は、ログを年、月、日、または時間で自動的に分類したり、フォルダーを自動的に作成したりすることはありません。ログクエリは、ログコンテンツ内の実際の時間フィールドに完全に依存します。
さらに、特定の Alibaba Cloud サービスまたは SLS の機能は、特定の目的のために専用の LogStore を自動的に作成します。これらの LogStore は、他のタイプのデータを受け入れることはできません。例は次のとおりです:
internal-operation_log:SLS 自体が生成する詳細な操作ログを保存します。oss-log-store:OSS アクセスログのアーカイブを設定すると自動的に作成されます。
LogStore 仕様の比較
Simple Log Service は、機能とコストの点で異なる、Standard と Query の 2 種類の LogStore を提供します。
タイプ | コスト (インデックストラフィック料金の比較) | シナリオ |
スタンダード | USD 0.0875 / GB | このタイプは、インタラクティブ分析、リアルタイムモニタリング、可視化、またはオブザーバビリティシステムの構築に使用します。 |
クエリ | USD 0.0146 / GB | このタイプは分析をサポートしていません。分析なしで高速なキーワード検索のみが必要な、ログアーカイブ、監査ログの保存、またはトラブルシューティングのシナリオに使用します。一般的なユースケースには、アクセス頻度の低い長期保持 (数か月または数年) が含まれます。 |
スコープと権限
基本的な Logstore の作成
コンソール
Simple Log Service (SLS) コンソールにログインします。プロジェクトリストで、対象のプロジェクトをクリックします。
タブで、[+] アイコンをクリックします。
Logstore の作成 ページで、設定を行い、OK をクリックします。
Logstore タイプ:デフォルトではスタンダードです。
課金モード:
機能別課金:使用した各リソース (ストレージ、インデックス作成、読み取り/書き込み操作など) に対して個別に課金されます。毎月の無料利用枠が付与されるため、小規模なシナリオでのコスト管理に役立ちます。
取り込みデータ量課金:取り込まれた生のデータ量に対してのみ課金されます。ストレージとコア機能は 30 日間無料で、よりシンプルでコスト効率の高い料金モデルを提供します。
ヒント:データ保持期間が 30 日に近く、インデックスを作成するフィールドが多い (特に全文インデックス) ほど、取り込みデータ量課金が適しています。
Logstore 名:プロジェクト内でグローバルに一意である必要があり、作成後は変更できません。
データ保持期間:デフォルトでは 30 日です。
他のすべての設定はデフォルト値のままにします。
API
Logstore の設定変更
作成時に以下のパラメータを設定できます。このセクションでは、Logstore の変更を例に説明します。
[ログストレージ] をクリックします。[Logstores] ページで、対象の Logstore にカーソルを合わせ、 を選択します。Logstore のプロパティで、シナリオに基づいて関連設定を変更します。
特定のログの削除またはログ保持期間の設定
コンソール
基本情報 で 変更 をクリックし、データ保持期間を調整して 保存 をクリックします。
Simple Log Service では、[ログの論理削除] 機能を使用して、特定のログエントリを削除できます。Logstore の [クエリと分析] ページで、クエリ条件を入力し、時間範囲を選択して、[ログの論理削除] をクリックして削除タスクを送信します。削除されたログエントリは、以降のクエリには表示されなくなり、保持期間が終了すると完全に削除されます。また、データ保持期間を変更するか、課金を停止するか Logstore を削除してすべてのログを削除することで、期限切れのログを一括で削除することもできます。
[日数限定]:有効な値は 1~3650 日です。ログは、設定された保持期間が終了すると削除されます。
[恒久的な保管:]:Logstore 内のログを無期限に保持します。
変更はすぐに有効になりますが、有効期限が切れたデータの削除には時間がかかる場合があります。
変更が有効になったことの確認
変更が保存されたら、再度 Logstore にカーソルを合わせ、変更 をクリックします。Logstore のプロパティで、[データ保持期間] に表示される日数が設定した値であることを確認し、設定が適用されたことを確かめます。Logstore で [永久保持] が有効になっている場合、カスタムの日数は表示されません。これは、この Logstore のログが、設定を変更するまで保持されることを示します。
データ保持期間が変更できない、または保存に失敗する場合のトラブルシューティング
[データ保持期間] を編集できない場合 (保持期間の編集ボタンが選択不可になっているか、ストレージ期間が選択できない)、または変更を保存する際にエラーが返されてライフサイクル設定を完了できない場合は、次の項目を順番に確認してください:
Logstore が、クラウドサービスまたは Simple Log Service によって自動的に作成された専用 Logstore であることがあります。自動作成は、Redis 専用 Logstore、MongoDB 専用 Logstore、Simple Log Service 管理専用 Logstore に適用され、そのデータ保持期間は対応するクラウドサービスによって管理されます。Simple Log Service コンソールで変更を保存すると、そのクラウドサービスのコンソールで操作を実行するように促すメッセージが表示されます。カスタムの保持期間を使用するには、対応するクラウドサービスのコンソールで調整するか、ビジネスログ用に標準の Logstore を作成してください。
Logstore が、
internal-というプレフィックスが付いたシステム予約 Logstore であることがあります (例:internal-operation_log、internal-alert-history、internal-etl-log)。このような Logstore は特定のデータインポート設定にすでにバインドされており、コンソールには現在の Logstore が特定のデータインポート用に設定されていると表示されるため、その設定項目はカスタマイズできません。現在のアカウントに十分な権限がないことがあります。Logstore の設定を変更するには、対象のプロジェクトに対する Logstore の管理権限、つまりこのトピックの「スコープと権限」セクションに記載されている
log:*LogStoreなどの権限が必要です。Resource Access Management (RAM) ユーザーとしてログオンしている場合、AliyunLogFullAccessシステムポリシー、またはこれらの権限を含むカスタムポリシーを Alibaba Cloud アカウント所有者にリクエストしてください。コンソールページが正しく表示されていないことがあります。ページを更新するか、別のブラウザに切り替えて、再度対象の Logstore にカーソルを合わせ、変更 をクリックしてから、[データ保持期間] を再度変更してください。
標準的なシナリオでは、このセクションの [API] タブに記載されているように
ttlを変更することでも設定を完了できます。前述の専用 Logstore については、引き続き対応するクラウドサービスのコンソールで保持期間を調整する必要があります。
API
Update Logstore API で ttl の値を更新することで、ログの保持期間を調整します。
階層化によるストレージコストの最適化
コンソール
基本情報 で 変更 をクリックし、インテリジェントティアリングを有効にします。
ストレージポリシー を設定します:3 つの階層の日数の合計は、合計データ保持期間と一致する必要があります。
ホットストレージ:最小 7 日間。
IA ストレージクラス:最小 30 日間。
アーカイブストレージ:最小 60 日間。
[データ保持期間] を [指定日数] に設定し、[インテリジェントティアリング] を有効にして、[ストレージポリシー] で階層移行を設定します:ホットストレージは期間終了後に自動的に IA ストレージに移行し、IA ストレージはアーカイブストレージに移行し、アーカイブストレージは期間終了後に自動的に削除されます。
保存 をクリックします。詳細については、「インテリジェントティアリング」をご参照ください。
API
Logstore の更新 で ttl、hot_ttl、および infrequentAccessTTL の値を更新することで、ストレージ階層の保持ポリシーを動的に調整できます。
フロントエンドログの収集
Simple Log Service (SLS) は、ミニプログラム、モバイルアプリ (iOS/Android)、およびブラウザーからログを収集するための WebTracking を提供します。
この機能は、次の 2 つの方法で使用できます:
STS 認証 を使用して転送します。この方法は本番環境に適しており、Logstore の設定変更は不要です。
OpenAPI を使用して 匿名転送 を有効にします。この方法はテスト専用であり、次の説明に従って Logstore で設定を有効にする必要があります。
コンソール
[基本プロパティ] で 変更 をクリックし、WebTracking を有効にしてから 保存 をクリックします。
API
Update Logstore API で enable_tracking パラメーターを true に設定して、WebTracking を有効にします。
パブリック IP アドレスとログ到着時刻の自動追加
有効にすると、以降のログの取り込み時に、次の情報が自動的に追加されます:
tag:client_ip:ログソースデバイスのパブリック IP アドレス。
tag:receive_time:Simple Log Service サーバーにログが到着した時刻。UNIX タイムスタンプ (1970-01-01 00:00:00 UTC からの経過秒数) 形式です。
コンソール
[基本プロパティ] で 変更 をクリックし、[パブリック IP の記録] を有効にしてから [保存] をクリックします。
API
Update Logstore で appendMeta パラメーターを設定することで、パブリック IP の記録を有効にします。
シャードによるインジェスト性能の調整
各シャードは、インジェストでは 5 MB/s または 500 書き込み/秒、消費では 10 MB/s または 100 読み取り/秒をサポートします。 これらはソフトリミットです。システムはこれらの制限を超えるリクエストを処理しようとしますが、サービス品質は保証されません。トラフィックがシャードのキャパシティを超える場合は、シャードを分割してキャパシティを増やしてください。
コンソール
[基本プロパティ] で 変更 をクリックし、[自動シャーディング] を有効にして、シャードの上限を設定し、保存 をクリックします。
Simple Log Service は、個々のシャードの 分割とマージ をサポートします。
API
課金の停止または LogStore の削除
一度削除すると、LogStore 内のすべてのログデータは完全に失われ、復旧することはできません。操作は慎重に行ってください。
LogStore を削除する前に、ビジネスへの影響を評価してください。LogStore がモニタリング、アラート、分析、または監査に使用されておらず、データ変換、データ転送、または API クエリのデータソースでない場合、LogStore を削除しても通常はビジネス運用に影響はありません。続行する前に、重要な関連設定が残っていないことを確認してください。削除された LogStore 内のデータは復旧できません。
コンソール
削除前のクリーンアップ。
LogStore を削除する前に、関連するすべての Logtail 設定を削除してください。これは、コンソールが LogStore を削除するときに実行する唯一の必須の前提条件チェックです。LogStore がまだ Logtail 収集設定に関連付けられている場合、コンソールには Logtail 設定が存在するため先に削除する必要がある旨が表示され、削除を続行できなくなります。したがって、LogStore を削除できない場合は、まずその LogStore のすべての Logtail 収集設定を削除してから、再度 LogStore を削除してください。
この LogStore で LogShipper が有効になっている場合、新しいデータの書き込みを停止し、削除前に既存のすべてのデータが正常に転送されたことを確認してください。
プロジェクトの [リソースリリース保護] はプロジェクト自体に適用されます。有効にした後、プロジェクトを削除する前に手動で無効にする必要があります。単一の LogStore の削除はこの機能の影響を受けないため、無効にする必要はありません。
削除手順。
タブで、対象の LogStore にカーソルを合わせ、 を選択します。
警告 ダイアログボックスで、削除してもよろしいですか。 をクリックします。
削除後の注意点。
削除当日もストレージ料金は発生します。翌日以降は料金は発生しません。削除後 3 日目から、この LogStore の請求書は届かなくなります。
削除後、すべてのエクスポートタスク、データ変換ジョブ、この LogStore をソースとするスケジュール済みの SQL タスク、およびこの LogStore を対象とするインポートタスクは削除されます。
API
実際のシナリオ向けの設定例
大量ワークロード向けのリアルタイムモニタリングと分析
オンラインアプリケーションは、リアルタイムで大量のログを生成します。障害発生時には、エラーログを迅速に特定し、リアルタイムアラートでパフォーマンスメトリック (QPS や応答レイテンシなど) をモニタリングする必要があります。
推奨設定: Standard LogStore + 取り込みデータ量課金 + 自動シャーディング。
理由: Standard LogStore は、分析、リアルタイムモニタリング、および可視化をサポートします。取り込み量が多く、広範なインデックス作成が必要になる可能性があるため、取り込みデータ量課金はコスト効率に優れており、自動シャーディングは一貫した取り込みおよび分析パフォーマンスを確保します。
コンプライアンス、監査、および規制シナリオ
業界の規制により、監査のためにユーザー操作ログとセキュリティログを 6 か月以上保存する必要がありますが、毎日のクエリと分析の頻度は非常に低いです。
推奨設定: Query LogStore + インテリジェント階層化。
理由: Query LogStore は、Standard よりも低いインデックス トラフィックコストで検索専用のワークロードをサポートします。インテリジェント階層化は、古いログを低コストのストレージ階層に自動的に移動させることで、長期的なストレージコストを削減します。
関連リファレンス
機能別課金における LogStore の比較
Query LogStore は、機能別課金のみをサポートします。このモデルでは、Standard LogStore と Query LogStore の比較は次のようになります:
比較項目 | Standard | Query 仕様 | |
コスト | USD 0.0875/GB | USD 0.0146/GB | |
機能 | サポート対象 | クラウド製品ログの取り込みはサポートしていません。 | |
サポート対象 | サポート対象 | ||
サポート対象 | サポート対象 | ||
分析 (SQL ステートメント) | サポート対象 | サポート対象外 | |
サポート対象 | サポート対象 | ||
サポート対象 | サポート対象 | ||
サポート対象 | サポート対象外 | ||
サポート対象 | サポート対象 | ||
サポート対象 | サポート対象外 | ||
サポート対象 | クエリベースのアラートのみをサポートします | ||
サポート対象 | サポート対象外 | ||
サポート対象 | サポート対象 | ||
サポート対象 | サポート対象 | ||
サポート対象 | サポート対象 | ||
制限事項
取り込みデータ量課金は、SLS のすべての機能をサポートします。クエリと分析、データ変換、インテリジェントアラート、コンサンプション/転送などの付加価値機能には追加料金は発生しませんが、以下のようにクォータ制限の対象となります。
クォータ制限 | 説明 |
Data transformation volume | Maximum 100 TB per LogStore per month. |
スケジュールされた SQL データ量 | LogStore ごとに月間最大 20 TB。 |
転送データ量 | LogStore ごとに月間最大 100 TB。 |
コンサンプションデータ量 | LogStore ごとに月間最大 100 TB。 |
アラートジョブの計算量 | LogStore ごとに月間最大 100 TB。 |
課金の概要
LogStore のコストは、主に選択された課金モードによって決まります。
機能別課金: ストレージ容量、インデックス トラフィック、読み取り/書き込み操作、シャード数などのリソースの実際の使用量に対して個別に課金されます。
取り込みデータ量課金: 取り込まれた生のデータ量に対してのみ支払います。30 日間の無料ストレージと複数の無料機能が含まれています。
主な料金詳細:
Standard のインデックス トラフィック: USD 0.0875/GB。
Query のインデックス トラフィック: USD 0.0146/GB。
コスト最適化のヒント:
ログ保持期間が 30 日に近いか、30 日を超える場合、取り込みデータ量課金の方が通常はコスト効率が高くなります。
アーカイブおよび取得専用のシナリオの場合、Query LogStore を使用してインデックス作成コストを削減できます。
インテリジェント階層化 を使用すると、アクセス頻度の低いデータを低コストのストレージ階層に移動させることができます。
よくある質問
LogStore を作成できない
デフォルトでは、プロジェクトごとに最大 200 の LogStore を作成できます。未使用の LogStore を削除するか、以下のようにクォータの引き上げをリクエストしてください。
Simple Log Service コンソール にログインし、プロジェクトリストで対象のプロジェクトをクリックします。
プロジェクトページで、[概要] > [基本情報] > [リソースクォータ] に移動し、管理 をクリックします。リソースのクォータ パネルで、LogStore のクォータ制限を調整し、保存 をクリックしてリクエストを送信します。変更が有効になるまで約 1 時間かかります。
Simple Log Service でログが見つからないのはなぜですか?
プロジェクトまたは LogStore が見つからない
プロジェクトまたは LogStore を手動で削除した場合、ログは復旧できません。過去 90 日以内の削除イベントについては、ActionTrail を使用して確認してください。
アカウントの料金滞納が 7 日以上続いた場合、サービスは使用放棄と見なされます。プロジェクトは回収され、データは完全に削除されます。詳細については、「料金滞納」をご参照ください。
ログストレージのコストを削減するにはどうすればよいですか?
SLS の課金を確認するには、「SLS ストレージ容量と消費記録の表示」をご参照ください。
LogStore に収集されたログのデータソースを特定するにはどうすればよいですか?
プロジェクトに作成した覚えのない LogStore が含まれている場合、またはどのクラウドサービスが LogStore にログを書き込んでいるかわからない場合は、次の方法でデータソースとログソースサービスを確認できます:
LogStore のデータインポート設定を確認してください。Logtail 収集設定とクラウドサービスログの転送またはインポート設定は、LogStore に書き込むデータソースに直接対応します。これはソースを確認する最も直接的な方法です。
LogStore の [クエリと分析] ページで [生ログ] を表示すると、各ログエントリの 時間/IP 列にソース識別子フィールド
__source__が表示されます。 Logtail がファイルから収集するログには、Simple Log Service の予約語である__tag__:__path__などの予約済みフィールドも含まれており、これらのフィールドを使用してログの実行時のソースを特定できます。プロジェクトの説明を確認してください。クラウドサービスによる自動作成から提供されるプロジェクトは、通常、その目的とソースが説明に記載されています。
internal-という接頭辞が付いた LogStore (例:internal-operation_log、internal-alert-history、internal-etl-log) は、Simple Log Service によって特定のデータインポート用に予約されています。これらの LogStore の場合、コンソールには、現在の LogStore が特定のデータインポート用に設定されており、その設定項目はカスタマイズできないことが示されます。GetLogStoreから返されるproductTypeフィールドに依存してソースを特定しないでください。このフィールドは Simple Log Service OpenAPI で定義されておらず、その値も標準化されていません。補助的な情報としてのみ使用し、結論の唯一の根拠としては決して使用しないでください。
LogStore の生ログストレージはデフォルトで有効になっていますか?
はい。生ログストレージはデフォルトで有効になっており、手動での設定は不要です。ログが LogStore に書き込まれると、生ログは保存され、Simple Log Service は生ログストレージ用の個別のスイッチを提供していません。ログの保持期間は、LogStore のデータ保持期間によって決まります。
これを確認するには、Simple Log Service コンソール にログインし、対象の LogStore の[クエリと分析] ページに移動し、時間範囲を選択して、[生ログ] タブで書き込まれたログを表示してください。[生ログ] タブは、LogStore のインデックス作成が無効になっている場合でも利用できます。ページにインデックス作成が有効になっていないと表示された場合、インデックス作成が有効になった後に書き込まれたデータのみをクエリできます。