HTTP API

您可以使用 REST API 查询 Logging 服务。日志终端使用 Unity 服务帐户进行身份验证。

请求日志

向 Logging API 发出 GET 请求。

cURL 命令示例:

curl https://services.api.unity.com/observability/v1/projects/<PROJECT_ID>/environments/<ENVIRONMENT_ID>/logs \
--header 'Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>' \
--url-query 'from=<TIME_FROM>' \
--url-query 'to=<TIME_TO>' \
--url-query 'query=<FILTER_EXPRESSION>' \
--url-query 'limit=<LIMIT>' \
--url-query 'offset=<OFFSET>'

提供以下可选查询参数:

  • from:RFC3339 时间戳,用于指定要返回的记录的起始时间戳。例如,2023-06-29T11:30:22.939Z
  • to:RFC3339 时间戳,用于指定要返回的记录的结束时间戳。
  • query:用于过滤的布尔表达式。请参阅过滤日志以获取更多信息。
  • limit:一个正整数,用作要返回的最大记录数。必须小于或等于 100。
  • offset:一个正整数,用作查询第一个结果的日志偏移量。

相对时间范围

该 API 还支持 from 和 to 参数的相对时间表达式,以便更轻松地处理时间范围。

基本语法包含以下组成部分:

  • 基础时间:RFC3999 时间戳或 now 关键字。
  • 运算符:+ 或 -。
  • 时间偏移:整数和表示天、小时、分钟或秒的单位,例如 12d、5h、3m、17s。

一些示例如下:

  • from=now-30m
  • from=2023-08-29T11:30:00.000Z+30s
  • from=now-2d&to=now-6h

示例 API 调用

以下示例演示如何使用 cURL 从 Logging API 查询日志。

如需更多有关如何进行身份验证的信息,请参阅身份验证

curl https://services.api.unity.com/observability/v1/projects/<PROJECT_ID>/environments/<ENVIRONMENT_ID>/logs \
--header 'Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>' \
--url-query 'from=2023-09-01T00:00:00.000Z' \
--url-query 'to=2023-09-01T13:50:00.000Z' \
--url-query 'query=body~=”regular” AND logAttributes.example.myKey=”foo”' \
--url-query 'limit=10' \
--url-query 'offset=0'

响应可能如下所示:

{
   "limit" : 10,
   "offset" : 0,
   "total" : 600,
   "results" : [
      {
         "severityNumber" : 9,
         "severityText" : "Information",
         "timestamp" : "2023-09-01T10:45:00.445Z",
         "body" : "this is just a regular log message",
         "logAttributes" : {
            "example.myKey" : "foo",
            "log.record.uid" : "a566701a-a9e5-42f7-bd8e-013fa9ef1afa",
            "unity.environmentId" : "c288f9e5-423b-4150-a982-5a1a40b1219a",
            "unity.projectId" : "2af24fd0-f224-499e-8768-07b54c693aee"
         },
         "resourceAttributes" : {
            "service.name" : "cloud-code"
         }
      }
   ]
}

响应包含以下字段:

  • limit:返回的最大记录数。
  • offset:查询第一个结果的日志偏移量。
  • total:与查询匹配的记录总数。
  • results:日志条目数组。

results 数组对象映射到日志架构