본문으로 건너뛰기

RESTful API

개요

게임 서버와 클라이언트(선택)에서 로그 명세서 기반으로 생성한 유저 행동 로그를 접수하는 API로, 별도의 인프라 연동 없이 HTTP Call을 통해 로그를 수집하고, 유저 행동 로그 분석 파이프라인을 통해 여러 유입 경로로 수집된 로그와 함께 통계 분석을 진행 합니다.

API Endpoint

정보

{project-prefix}는 기술 PM이 전달 드립니다.

QA 환경 Endpoint: https://lognetic.{project-prefix}.hybegames.io

운영 환경 Endpoint: https://lognetic.{project-prefix}.hybegames.com

Event

이벤트 로그를 기록합니다.

항목내용
URLhttps://{환경별 EndPoint}/event
MethodPOST
Contents-Typeapplication/json

요청 파라메터

ParameterTypeRequiredDescription
recordslist<Log>requiredLog 형식의 로그들의 목록으로 최대 100건의 로그를 처리 하고, 100건 이상의 로그는 오류를 반환 함

<Log Sample>

{
"records": [
{
"log_type": "CLIENT_EVENT",
"external_device_id": "d804f1d9-a1b9-4d5e-a04c-32d199a6147a",
"external_device_type": 0,
"os_type": 1,
"service_id": 10040041,
"cre_time": "2024-02-23T05:25:00Z",
"uid": "",
"imid": "",
"event_name": "000_launch",
"client_detail": "",
"activity_kind": "session"
}
]
}

<CURL Sample>

curl --location 'https://{환경별 EndPoint}/event' \
--header 'Content-Type: application/json' \
--data '{
"records": [
{
"log_type": "TEST_LOG",
"external_device_id": "d804f1d9-a1b9-4d5e-a04c-32d199a6147a",
"external_device_type": 0,
"os_type": 1,
"cre_time": "2024-07-03T10:52:00Z",
"uid": "",
"imid": "",
"event_name": "000_launch",
"client_detail": "",
"activity_kind": "session",
"service_id": "10060000"
}
]
}'

로그 명세

상세한 로그의 구조는 인사이트랩에서 제공 해 드리는 로그 명세 내용을 기반으로 하고 있으나, 필수 항목을 제외한 파라메터는 수시로 추가/제거 될 수 있습니다.

  • 구현 시 로그의 명세 수정으로 Param이 추가/제거 될 수 있어 되도록 누락되는 항목이 없도록 Map 이나 Dictionary를 추천합니다.

필수 항목

ParamTypeRequiredDescriptionSample
log_typeStringrequired로그 명세서에 정의된 log_type
service_idStringrequired서비스 id
cre_timeStringrequired로그 기록 날짜/시간(UTC)2024-02-20T13:04:44.156764Z

클라이언트에서 호출 하는 경우 request_address, country 는 로그 수집 시스템에서 수집이 가능함

Sample

{
"records": [
{
"srl": "",
"external_device_id": "d804f1d9-a1b9-4d5e-a04c-32d199a6147a",
"external_device_type": "",
"service_id": "10060000",
"region": "",
"cre_time": "2024-02-23T05:25:00.000000Z",
"log_type": ""CREATE_UID"
....
}
]
}

응답

모든 응답은 APi 성공 여부와 무관하게 HTTP Response Code를 200 으로 반환 하나, 시스템 장애나 비정상적인 접근 등에서 200 이외에 오류 코드가 반환 될 수 있음

ParamTypeDescription
resultCodeStringStatus: 200 SUCCESS : 성공, , Status: 400 INVALID_PARAMETER: 필수 항목 중 없거나 형식이 잘못된 요청이 있음, TOO_MANY_RECORDS: 한번에 요청 한 로그가 너무 많음 (최대 100개), , Status: 500 INTERNAL_SERVER_ERROR: 로그 수집 과정에서 오류가 발생함, ,