跳转至

如何发送日志批处理

Note

The.log 批次可以通过两种方式传输。

直接文件上传到 Google Cloud Storage

  • 要将.upload.log批处理文件上传到GCS,您必须首先申请BigQuery权限

GCS 桶列表

操作环境
桶地址
描述
实时服务 gs://snapshot_upload_live 用于上传服务操作环境的日志批量数据的桶
沙盒 gs://snapshot_upload_sandbox 用于上传沙盒环境的日志批量数据的桶

(强制)文件命名规范

  • 公司名称_类别值/YYYY/MM/dd/公司名称_类别值_YYYY_MM_dd_HH_mm_ss_uuid随机.log
    • 必须遵循文件命名约定。
    • 文件名中的日期和uuid用于检查存储日期并防止重复。
  • 文件扩展名为“.log”。
  • 示例)
    • com2us_nbasuperstars_team/2023/03/24/com2us_nbasuperstars_team_2023-03-24_05_55_00_c4c9c6e0-4093-4e29-853f-2d0d9608ca3b.log

文件格式

  • 文件应由每个表的日志组成,数据不应与不同类别混合。
  • 换行分隔的 json 文件(示例)
{"dateTime":"2021-10-11 11:27:15", "category":"game_name_login_log", "timezone":"UTC+09:00", "channel":"HIVE", "user_id":10053833008, "app_id":"com.com2us.hivesdk.android.google.global.normal", "did":5102491016, "level":0, "client_ip":"172.XX.XXX.XX", "device_name":"TINNO U319AA", "company":"C2S", "server_id":"GLOBAL-2", "server_uid":256489411, "last_login_date":"2021-10-10 08:33:11", "os_version":"11", "is_emulator":0, "game_language":"en"}
{"dateTime":"2021-10-11 11:27:15", "category":"game_name_login_log", "timezone":"UTC+09:00", "channel":"HIVE", "user_id":10053833008, "app_id":"com.com2us.hivesdk.android.google.global.normal", "did":5102491016, "level":0, "client_ip":"172.XX.XXX.XX", "device_name":"TINNO U319AA", "company":"C2S", "server_id":"GLOBAL-2", "server_uid":256489411, "last_login_date":"2021-10-10 08:33:11", "os_version":"11", "is_emulator":0, "game_language":"en"}
{"dateTime":"2021-10-11 11:27:15", "category":"game_name_login_log", "timezone":"UTC+09:00", "channel":"HIVE", "user_id":10053833008, "app_id":"com.com2us.hivesdk.android.google.global.normal", "did":5102491016, "level":0, "client_ip":"172.XX.XXX.XX", "device_name":"TINNO U319AA", "company":"C2S", "server_id":"GLOBAL-2", "server_uid":256489411, "last_login_date":"2021-10-10 08:33:11", "os_version":"11", "is_emulator":0, "game_language":"en"}
  • 文件不应被压缩。
  • 文件大小应控制在不超过1G。
  • 上传多个文件时,最好是文件较少但大小较大。
  • 一次上传过多文件可能会导致错误(每秒少于10个)。

GCS 文件上传指南

通过FluentD进行日志传输

Note

Log batch cannot be transferred to the server receiving via streaming FluentD.

For detailed information about using FluentD, refer to fluentd method page.

Fluentd 传输注意事项

  • file - limit 是 10Mbyte。超过此 limit 的文件将被自动删除,请注意。
  • 如果逐行传输(少于 10Mbyte)不可行,建议使用 googlestorage file 上传。

日志批处理的专用服务器信息

服务器类型 URL 地址
现场服务器 01 analytics-hivelog-snap-01.withhive.com
现场服务器 02 analytics-hivelog-snap-02.withhive.com
沙盒服务器 sandbox-analytics-hivelog.withhive.com


Fluentd 标签规则

  • 标签创建规则
    • 公司名称_表名(类别值)_快照
  • 示例
    • 使用通过组合公司名称和类别值创建的标签,包括快照
      • com2us_logname_snapshot

参考文献

  • 无论传输方式如何,日志批处理文件会在GCS中存储一段时间。
    • 保留期限:90天
    • 超过90天的文件将被删除,无法恢复。(BigQuery中的数据仍然可以查询)
  • 文件保留的目的包括稍后将数据重新加载到BigQuery或验证数据遗漏。