你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure Monitor Log Analytics API 请求格式

可以通过两个终结点来与 Log Analytics API 通信:

  • API 的直接 URL:https://api.loganalytics.azure.com
  • 通过 Azure 资源管理器 (ARM)。

虽然 URL 不同,但每个终结点的查询参数是相同的。 这两个终结点都需要通过 Microsoft Entra ID 进行授权。

API 支持 POSTGET 方法。

公共 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 正文中。
  • 如果查询字符串和 JSON 正文中都包含 timespan 参数,则时间范围将是这两个值的交集。

例如,若要按类别统计 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"
    }