Azure Monitor Log Analytics API 要求の形式
Log Analytics API と通信するには、次の 2 つのエンドポイントを使用します。
- API の直接 URL:
https://api.loganalytics.azure.com
- Azure Resource Manager (ARM) を使用。
各エンドポイントの URL は異なりますが、クエリ パラメーターは同じです。 どちらのエンドポイントでも、Microsoft Entra ID による認可が必要です。
この API では、POST
と GET
メソッドがサポートされています。
パブリック API の形式
パブリック API の形式は次のとおりです。
https://api.loganalytics.azure.com/{api-version}/workspaces/{workspaceId}/query?[parameters]
ここで、
- api-version: API のバージョン。 現在のバージョンは "v1" です。
- workspaceId: ワークスペース ID
- parameters: このクエリに必要なデータ
GET /query
実行された HTTP メソッドが GET
の場合、パラメーターはクエリ文字列に含まれます。
たとえば、カテゴリ別に AzureActivity イベントをカウントするには、次の呼び出しを行います。
GET https://api.loganalytics.azure.com/v1/workspaces/{workspace-id}/query?query=AzureActivity%20|%20summarize%20count()%20by%20Category
Authorization: Bearer <access token>
POST /query
実行された HTTP メソッドは POST
です。
- 本文は有効な JSON である必要があります。
- 要求には次のヘッダーを含める必要があります:
Content-Type: application/json
- パラメーターは JSON 本文にプロパティとして含まれています。
- timespan パラメーターがクエリ文字列と JSON 本文の両方に含まれている場合、timespan は 2 つの値の積集合になります。
たとえば、カテゴリ別に AzureActivity イベントをカウントするには、次の呼び出しを行います。
POST https://api.loganalytics.azure.com/v1/workspaces/{workspace-id}/query
Authorization: Bearer <access token>
Content-Type: application/json
{
"query": "AzureActivity | summarize count() by Category"
}