HTTP API
REST API를 사용하여 로깅 서비스를 쿼리할 수 있습니다. 로그 엔드포인트는 Unity 서비스 계정을 사용하여 인증됩니다.
로그 요청
로깅 API에 대한 GET 요청을 만듭니다.
Observability API 기술 자료에는 로그 쿼리 실행에 대한 자세한 설명이 포함되어 있습니다.
인증하는 방법에 대한 자세한 내용은 인증을 참고하십시오.
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에서는 시간 범위를 더 쉽게 사용할 수 있도록 시작 및 종료 파라미터에 대한 상대 시간 표현식도 지원됩니다.
기본 구문은 다음 요소로 구성됩니다.
- 기본 시간: 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을 사용하여 로깅 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
배열 오브젝트는 로그 스키마에 매핑됩니다.