게임 콘탠츠 로그
카테고리¶
| 상용 서버 | service_metrics-game_content_log | 
|---|---|
| 개발 서버 | service_metrics_test-game_content_log | 
로그 스펙¶
Note
스네이크 케이스(예: server_id) 형태의 필드는 최종 저장소(BigQuery)에 저장될 때 카멜 케이스(예: serverId) 형태로 변환되며, serverid 같은 스펙에 명시되지 않은 형태로 전송된 로그는 해당 컬럼에 저장되지 않습니다.
| 필드명 | 설명 | 타입 | 필수여부 | 
|---|---|---|---|
| date | 로그 발생 시각 형식: 년-월-일 시:분:초 예. 2012-01-19 16:24:00 | string | Y | 
| timezone | 로그에 입력하는 시간 파라미터의 UTC offset 값 (공백 없이 입력) 예. "UTC+10:30" | string | Y | 
| channel | C2S: Hive KAK: 카카오 LIN: 라인 WEI: 웨이보 STE: 스팀 | string(3) | Y | 
| channel_uid | 로그인 채널에서의 유저 식별값(주로 bigint를 사용하지만 스트링형을 사용하는 채널들이 있을 수 있음) 라인과 같이 정보를 알 수 없는 경우는 "0" 으로 전송 | string(64) | Y | 
| game | 게임 브랜드 네임 사용 (예. derbydays) app_id의 세 번째 항목 q예. com.com2us.littlelegends.kakao.freefull.apple.global.ios.universal => littlelegends | string(50) | Y | 
| server_id | 서버 구분 코드 서버코드표 참조하여 '서버 코드(JSON 입력 코드)'를 입력 | string | Y | 
| server_uid | 게임 서버에서 사용하는 유저 식별자 유저가 로그인하지 않은 상태에는 유저 식별자를 알 수 없으므로 식별자 값으로 0을 설정 | bigint | Y | 
| type | 문서 구별 값 | string | Y | 
| content | 게임에 따라 동적으로 로그 내용을 담음 | hashmap(json) | Y | 
| client_ip | 클라이언트의 IP. 이 값으로 GeoIP를 이용하여 country값 추출 | string | Y | 
| server_ip | 서버의 IP | string | Y | 
로그 예제¶
{
    "date": "2014-11-26 10:42:29",
    "channel": "C2S",
    "channel_uid": "235691991",
    "game": "smon",
    "server_id": 4,
    "server_uid": 235690991,
    "type": "user",
    "content": {
        "command": 4,
        "reason": 59,
        "stage": 1,
        "stage_name": "stage_1",
        "monster_id": 1594,
        "monster_name": "monster_1594",
        "id_1": 2640,
        "id_2": 9759,
        "id_1_name": "id_1_name_2640",
        "id_2_name": "id_2_name_9759"
    },
    "client_ip": "127.0.0.1",
    "server_ip": "192.168.56.101"
}