Log Analytics ワークスペースでは、分析や、Sentinel などの他のサービスでの使用のために、Azure と Azure 以外のリソースから 1 つの領域にログ データを収集し、たとえば Azure Logic Apps を使用して、アラートやアクションをトリガーできます。 Log Analytics ワークスペースはテーブルで構成されており、これらを、データ モデル、データ アクセス、およびログ関連のコストを管理するように構成できます。 この記事では、Azure Monitor ログのテーブル構成オプションと、データ分析およびコスト管理のニーズに基づいてテーブルのプロパティを設定する方法について説明します。
テーブルのプロパティ
この図は、Azure Monitor ログのテーブル構成オプションの概要を示しています。
テーブルの種類とスキーマ
テーブルのスキーマはテーブルを構成する列のセットで、そのテーブルの中に、Azure Monitor ログによって 1 つ以上のデータ ソースからのログ データが収集されます。
Log Analytics ワークスペースには、以下の種類のテーブルを含めることができます。
テーブルの種類 |
データ ソース |
スキーマ |
Azure テーブル |
Azure リソースからのログ、または Azure のサービスやソリューションで必要とされているログ。 |
Azure Monitor ログでは、使用する Azure サービスと、特定のリソースに対して構成する診断設定に基づいて自動的に Azure テーブルが作成されます。 各 Azure テーブルには、事前に定義されたスキーマがあります。 Azure テーブルに列を追加して、変換されたログ データを格納したり、別のソースのデータを使用して Azure テーブル内のデータをエンリッチしたりできます。 |
カスタム テーブル |
Azure 以外のリソースと、ファイル ベースのログなどの他の任意のデータ ソース。 |
特定のデータ ソースから収集したデータを格納する方法に基づいて、カスタム テーブルのスキーマを定義できます。 |
検索結果 |
Log Analytics ワークスペースに保存されているすべてのデータ。 |
検索結果テーブルのスキーマは、検索ジョブの実行時に定義したクエリに基づいています。 既存の検索結果テーブルのスキーマは編集できません。 |
復元されたログ |
Log Analytics ワークスペースの特定のテーブル内に保存されているデータ。 |
復元されたログ テーブルには、ログを復元した対象のテーブルと同じスキーマがあります。 既存の復元されたログ テーブルのスキーマは編集できません。 |
テーブル プラン
テーブル内のデータにアクセスする頻度に基づいて、テーブルのプランを構成します。
- Analytics プランは、継続的な監視、リアルタイム検出、パフォーマンス分析に適しています。 このプランでは、対話型の複数テーブルのクエリと、機能やサービスでの使用のためにログ データを、30 日間から 2 年間使用できます。
- Basic プランは、トラブルシューティングやインシデント応答に適しています。 このプランでは、割引されたインジェストと最適化された単一テーブルのクエリを 30 日間使用できます。
- Auxiliary プランは、詳細ログなどのロータッチ データや、監査やコンプライアンスに必要なデータに適しています。 このプランでは、低コストのインジェストと最適化されていない単一テーブルのクエリを 30 日間使用できます。
Azure Monitor ログ テーブル プランについて詳しくは、Azure Monitor ログのテーブル プランに関するページを参照してください。
長期保存
長期保有は、ワークスペースで定期的に使用しないデータを、コンプライアンスや時折の調査のために保管するための低コストのソリューションです。 テーブルレベルの保有期間の設定を使用して、長期保有期間を追加または延長します。
長期保有のデータにアクセスするには、検索ジョブを実行します。
データ収集ルールを使用して、カスタム テーブル用に定義したスキーマに基づいてインジェスト前にフィルターによるデータの除外とデータ変換を行い、コストと分析作業を削減します。
テーブルのプロパティを表示する
注意
テーブル名は、大文字と小文字が区別されます。
Azure portal でテーブルのプロパティを表示および設定するには:
Log Analytics ワークスペースから [テーブル] を選択します。
[テーブル] 画面には、Log Analytics ワークスペース内のすべてのテーブルのテーブル構成情報が表示されます。
テーブルの右側にある省略記号 (...) を選択して、テーブル管理メニューを開きます。
使用できるテーブル管理オプションは、テーブルの種類によって異なります。
[Manage table] (テーブルの管理) を選択して、テーブルのプロパティを編集します。
[スキーマの編集] を選択して、テーブル スキーマを表示および編集します。
テーブルのプロパティを表示するには、Tables - Get API を呼び出します。
GET https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/tables/{tableName}?api-version={api-version}
応答本文
名前 |
型 |
説明 |
properties.plan |
文字列 |
テーブル プラン。 Analytics 、Basic または Auxiliary |
properties.retentionInDays |
整数 |
テーブルの対話型の保持期間 (日数)。 Basic と Auxiliiary では、この値は 30 日間です。 Analytics では、値は 4 から 730 日間です。 |
properties.totalRetentionInDays |
整数 |
対話型の保持期間や長期保有など、テーブルの合計データ保持期間。 |
properties.archiveRetentionInDays |
整数 |
テーブルの長期保有期間 (読み取り専用、計算済み) |
properties.lastPlanModifiedDate |
文字列 |
このテーブルのプランが最後に設定された日時。 既定の設定から変更されていない場合は Null (読み取り専用)。 |
要求のサンプル
GET https://management.azure.com/subscriptions/ContosoSID/resourcegroups/ContosoRG/providers/Microsoft.OperationalInsights/workspaces/ContosoWorkspace/tables/ContainerLogV2?api-version=2025-02-01
応答のサンプル
状態コード:200
{
"properties": {
"retentionInDays": 8,
"totalRetentionInDays": 8,
"archiveRetentionInDays": 0,
"plan": "Basic",
"lastPlanModifiedDate": "2022-01-01T14:34:04.37",
"schema": {...},
"provisioningState": "Succeeded"
},
"id": "subscriptions/ContosoSID/resourcegroups/ContosoRG/providers/Microsoft.OperationalInsights/workspaces/ContosoWorkspace",
"name": "ContainerLogV2"
}
テーブルのプロパティを設定するには、Tables - Create または Update API を呼び出します。
PowerShell を使用してテーブルのプロパティを表示するには、次を実行します。
Invoke-AzRestMethod -Path "/subscriptions/ContosoSID/resourcegroups/ContosoRG/providers/microsoft.operationalinsights/workspaces/ContosoWorkspace/tables/Heartbeat?api-version=2025-02-01" -Method GET
応答のサンプル
{
"properties": {
"totalRetentionInDays": 30,
"archiveRetentionInDays": 0,
"plan": "Analytics",
"retentionInDaysAsDefault": true,
"totalRetentionInDaysAsDefault": true,
"schema": {
"tableSubType": "Any",
"name": "Heartbeat",
"tableType": "Microsoft",
"standardColumns": [
{
"name": "TenantId",
"type": "guid",
"description": "ID of the workspace that stores this record.",
"isDefaultDisplay": true,
"isHidden": true
},
{
"name": "SourceSystem",
"type": "string",
"description": "Type of agent the data was collected from. Possible values are OpsManager (Windows agent) or Linux.",
"isDefaultDisplay": true,
"isHidden": false
},
{
"name": "TimeGenerated",
"type": "datetime",
"description": "Date and time the record was created.",
"isDefaultDisplay": true,
"isHidden": false
},
{
"name": "ComputerPrivateIPs",
"type": "dynamic",
"description": "The list of private IP addresses of the computer.",
"isDefaultDisplay": true,
"isHidden": false
}
],
"solutions": [
"LogManagement"
],
"isTroubleshootingAllowed": false
},
"provisioningState": "Succeeded",
"retentionInDays": 30
},
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.OperationalInsights/workspaces/ContosoWorkspace/tables/Heartbeat",
"name": "Heartbeat"
}
テーブルのプロパティを設定するには、 Update-AzOperationalInsightsTable コマンドレットを使用します。
次のステップ
具体的には、次の方法を学習します。