跳轉至

如何使用日志定义

在遊戲中發生提款請求時生成的日誌。它存儲有關用戶提款請求和完成的資訊。

Hive 分析預設創建表

  • 默認情況下,使用分析時提供以下列出的表。
  • 如果您需要與預設表不同的表,請參考 [日誌定義] 來創建一個。
  • 表名為 "t_[日誌名稱]"。
  • 基本創建表分為兩個部分:直接從平台收集的基本日誌和必須從遊戲伺服器傳輸的遊戲日誌。
  • 點擊日誌名稱以查看每個表的字段信息。
    日誌名稱 表描述 日誌發生時間
    hive_purchase_log 包含用戶購買活動和由Hive的計費功能生成的支付信息的表 當用戶通過Hive計費購買遊戲內產品後,收據驗證結束時
    hive_sub_purchase_log 包含訂閱產品購買數據和由Hive計費功能生成的支付詳細信息的表 當用戶通過Hive開具發票購買遊戲內訂閱產品後,驗證訂閱收據時
    hive_login_log 包含成功通過Hive身份驗證的用戶登錄信息的表 當用戶通過Hive身份驗證功能完成身份驗證後登錄時
    hive_quit_log 當用戶在遊戲中發起提款請求時生成的日誌。它存儲有關用戶提款請求和完成的資訊。 用戶請求提款或提款在遊戲中完成的時刻。
    hive_singular_install 一個表格,通過Analytics提供的Singular特定的端點URL存儲各種屬性的歸因資訊 應用安裝和執行、事件發生、應用會話開始和結束,以及點擊鏈接的時間
    hive_adjust_fix_log 一個表格,通過Analytics提供的URL為各種屬性存儲歸因資訊,該URL用於Adjust端點。 應用安裝和執行、事件發生、應用會話開始和結束,以及點擊鏈接的時間
    hive_appsflyer_log 一個表格,通過Analytics提供的Appsflyer特定的端點URL存儲各種屬性的歸因數據 應用安裝和執行、事件發生、應用會話開始和結束,以及點擊鏈接的時間
    hive_user_entry_log 一個表格,存儲用戶啟動遊戲後直到達到遊戲界面的每個部分的資訊 訪問每個部分的時間,包括新安裝、條款和條件協議、額外下載、登錄等
    hive_au_download_log 一個表格,當遊戲通過條款和條件協議介面後的Hive配置功能下載時,存儲下載資訊 下載後何時同意條款
    hive_concurrent_user_log 一個表格,每兩分鐘接收並存儲使用Hive SDK的客戶端的連接資訊 ※當在 Hive 控制台中啟用「最小化網絡通信」選項時,不會進行數據收集。 登錄後每 2 分鐘發送一次日誌。
    hive_promotion_install_log 使用 Hive 推廣功能時收集的推廣安裝數據 當用戶在點擊交叉推廣後初始化 SDK
    hive_promotion_click_cross_log 使用 Hive 推廣功能時收集的交叉點擊推廣記錄 當用戶點擊交叉橫幅、優惠牆或 UA 邀請頁面上的下載圖標時
    hive_promotion_cpi_v2_log 當使用 Hive 推廣功能時收集的推廣 CPI V2 日誌 當用戶在選擇交叉推廣按鈕後初始化 SDK 時(僅限於初始安裝)
    hive_promotion_open_log 當使用 Hive 推廣功能時收集的推廣開啟日誌。 推廣橫幅和優惠牆的特殊曝光時間
    hive_promotion_info 使用 Hive 推廣功能時收集的推廣信息 Hive 控制台 > 推廣)活動的修改和創建時間
    hive_ad_watch_log 通過 Hive AdKit 在使用 AD(X) 或 ADOP 時提供的廣告觀看日誌 廣告加載、觀看開始、激勵和結束時間
    hive_push_open_log 存儲用戶在使用 Hive 通知功能時打開推送通知的時間信息的表格 當用戶在點擊活動推送通知後進入遊戲時
    hive_push_send_stat_log 使用 Hive 通知功能時,從推送發送後的 D-2 開始創建和維護的包含有關發送活動的統計信息的表格 在編輯發送活動的信息後從 D-2 開始
    pub_user_property_log 自定义用户属性表,除了预定义属性外,还可以使用从Hive SDK收集的数据任意定义属性值 (日志必须直接使用客户端日志传输功能进行传输) 当客户定义的属性发生时
    pub_mate_log Mate 日志 (日志必须直接使用客户端日志传输功能进行传输) 当伴侣获取和消耗变化发生时
    pub_levelup_log 升级日志 (日志必须直接使用客户端日志传输功能进行传输) 何时在游戏中升级用户账户或角色
    pub_asset_log 货币日志 (日志必须直接使用客户端日志传输功能进行传输) 何时购买或消费产品
    pub_store_click_log 商店点击日志 (日志必须直接使用客户端日志传输功能进行传输) 当点击产品详情或进行购买时
    pub_society_log 社交活动日志 (日志必须直接使用客户端日志传输功能进行传输) 当邀请、加入或添加公会、熟人、聚会等社交活动等变化发生时
    pub_contents_log 内容日志 (日志必须直接使用客户端日志传输功能进行传输) 当游戏内内容(任务、地下城、阶段等)被接受、失败、取消或完成时的状态时间变化
    pub_device_info 捕获用户设备信息的表格,通过Hive SDK (日志必须直接使用客户端日志传输功能进行传输) 何时初始化、登录或更改Hive SDK设置

日誌定義

  • 日誌定義是一個將遊戲日誌傳輸到 Hive Analytics v2 的功能。
      • 在後台定義您希望從遊戲中傳輸的日誌。指定的日誌將在您在定義日誌後應用創建的源代碼於遊戲時收集
      • 將提供一個功能,您可以檢查日誌是否正確定義以及日誌是否正確收集。
      • 後台路徑:Analytics > 日誌定義
  • Analytics 的日誌定義功能是一個重要功能,用於在發送日誌之前定義要發送的字段。
  • Analytics 在定義日誌時,將日誌定義功能分為兩種類型:定義日誌時必需的字段和用於使用 Analytics 功能的字段。
  • 可以根據用戶需求創建和使用附加字段。
  1. 日誌定義所需字段
    • 下表詳細說明了 Analytics 日誌定義所需的字段。
    • 這些字段在使用 Hive SDK 客戶端日誌傳輸功能時會定期收集。
      類別 字段名稱 描述 數據類型 示例
      基礎 時間 dateTime 日誌生成時間 格式:“YYYY-MM-DD hh:mm:ss* dateTime 值若超出當前時間前後 -4 年至 +1 年的範圍,將被視為例外。此類日誌將單獨存儲,並在存儲日期後兩天可供驗證 TIMESTAMP 2023-07-07 15:30:00
      timezone UTC 偏移量 日誌中時間參數值的< \* 傳輸注意事項 - 根據dateTime值動態設置和傳輸timezone 字符串 GMT+9:00
      遊戲 分類 appId 每個在應用中心註冊的遊戲的應用程式 ID< - 當作為 app_id 發送時,改為 appId 並保存 字符串 com.com2us.ios.universal
      appIndex 分配給 appId 的索引號< * 替换 INTEGER 123456
      gameId 格式包括域名和游戏名称在appId中。< * 替换 字符串 com.com2us.gamename
      gameIndex 分配给游戏的索引编号< * 替換 INTEGER 123456
      日誌 名稱 類別 在日誌定義期間指定的日誌名稱 字串 hive_login_log
      日誌 識別碼 guid 用於根據唯一鍵值和一個屬性行從日誌中移除重複項。 (即使其餘字段的值相同,如果guid值不同,則被視為不同的日誌。)* 傳輸注意事項 - 建議以隨機字符串形式傳輸,例如UUID 字符串 61ad27eaad7ae3d1521d
      其他 undefinedRawData 如果日誌定義中有未定義的元素,則將其保存為JSON字符串 字符串 { "tier" : "10", "fluentd_tag" : "ha2union.game.purchase_log", "country" : "HK" }
      替代)如果無法添加appId,即使只有一條日誌,也可以替代遊戲分類值。如果可以添加appId,則不包括在必填字段中。 有關appIndexgameIdgameIndex的信息可以在應用中心的AppId列表中找到。

 

  1. 用於分析功能的字段
    • 下表顯示了使用各種分析功能所需的元素,例如特定於遊戲的指標和分析提供的細分。
    • 必須建立分析才能利用其功能。
    • 這些字段在使用Hive SDK客戶端日誌傳輸功能時會定期收集。 <
      字段名稱 描述 數據類型 示例
      vid 為每個遊戲生成的用戶虛擬ID 整數 100967777206
      did 設備ID 在終端中唯一生成 整數 51726905112
      playerId 用於Hive集成身份驗證的密鑰 整數 100967777106
      serverId 識別遊戲服務器的唯一ID信息 字符串 GLOBAL
      market 遊戲服務的商店/平台信息 字符串 GO
      bigqueryRegistTimestamp 客戶提交的日誌進入BigQueryID表的時間 時間戳 2023-08-22 03:34:08 UTC
      lang 遊戲提供的語言信息字符串 英文
      appIdGroup 每个在应用中心注册的游戏的游戏 ID 字符串 com.com2us.testgame
      checksum 标准列用于检查重复数据,如果guid不正确< - 傳輸注意事項 * 除了 guid 之外,將所有列名和列值合併成一個字符串並作為 md5 值發送。 字符串 20ed52852cb2f72
      國家 遊戲提供的國家信息 字符串 美國
      公司 提供遊戲服務的公司信息 字符串 com2us

定義日誌

日誌定義列表

  1. 您可以在日志定义列表中定义新的日志,并检查之前定义的日志的状态。
  2. 创建客户端源:生成客户端源代码,以应用于您定义的整个日志列表所对应的游戏。
  3. 日志定义:定义新的日志。
  4. 加载以定义新的日志:在选择您之前定义的其中一个日志后,您可以使用此功能,您将被转移到复制和定义指定日志定义详细信息的屏幕。
  5. 注册为模板:您可以选择在之前定义的日志中经常使用的日志,并将其注册为模板。注册的模板可以在日志定义屏幕中加载并使用。
  6. 连接到 BigQueryID:这意味着日志数据存储已正确创建。
  7. 在数据流中存在:对于新定义的日志,将显示为“x”。您必须在使用之前检查它是否在第二天变为“O”。但是,您可以在定义新日志的当天收集日志。如果在您定义日志的当天以外的日期看到“X”,请联系以下人员。
  8. 如果“连接到 BigQueryID”和“在数据流中存在”显示“X”,则表示数据同步存在问题,您必须联系数据技术团队(DW 部门)。

使用網頁表單定義日誌

  1. 基本信息
    • 表格名稱:輸入對應日誌的表格名稱。
    • 詳細資訊:輸入對應表格的詳細資訊。這將在該段的遊戲資訊欄位中顯示,因此強烈建議您輸入用戶易於理解的描述。(例如:等級 - 用戶的帳戶等級)
    • 通過模板創建字段:如果您選擇之前註冊的模板之一,則對應日誌的定義資訊將被顯示,您可以通過修改需要修改的部分來進行日誌定義。
  2. 通用字段設置
    • 通用字段是預定義字段,所有日誌可以使用的字段提前定義。
    • 如果您勾選選擇數據復選框,該字段將成為此日誌中使用的字段。即使您不勾選,只要在遊戲中傳輸,您仍然可以收集日誌。然而,如果您勾選,將自動創建伺服器源代碼,您將能夠更方便地使用它。即使您不勾選客戶端,它也將從Hive SDK 4中收集。
  3. 定義字段設置
    • 定義字段是設置要傳輸的遊戲日誌的部分。您需要輸入字段名稱、類型、描述和示例值。
    • 勾選復選框,該字段將成為推薦字段,並定義為可以用於該段的字段。
    • 點擊註冊按鈕以完成日誌定義。完成日誌定義後,日誌將被添加到列表中,您將能夠添加或修改字段並在詳細頁面中檢查收集的數據。

使用 Excel 定義日誌

  1. 创建 Excel 文件
    • 根据以下格式输入表格。
      表格名称 Appid 的第一部分 表格描述
      字段名称 1 字段 1 类型 字段 1 的描述 字段 1 的示例值
      字段名称 2 字段 2 类型 字段 2 的描述 字段 2 的示例值
    • 例如,您可以创建如下表格。
    • 您可以向 Excel 文件添加一个工作表以定义多个日志。但是,您只能为同一个应用程序(游戏)定义日志。工作表名称可以是任何名称。
  1. 上传 Excel 文件
    • 在日志定义列表中点击“定义为 Excel 文件”以移动到如下所示的页面。
    • 将第 #1 步中创建的 Excel 文件拖到方框中并点击“注册”。

管理日誌

定義的日誌詳細頁面

  • 点击日志并移动到详细页面,以从日志定义列表中添加字段到相应的日志,或者检查日志传输状态是否正确。
  1. 基本信息,BigQuery 架构信息
    • 基本信息:您可以检查具有定义日志的游戏,类别,注册日期和详细信息。您还可以更改详细信息。
    • BigQuery 架构信息:您可以查看保存到BigQuery的架构信息。
  2. 日志字段信息
    • 公共字段将以黑色显示,而从游戏添加的字段将以蓝色显示。
    • 您可以修改字段详细信息和“使用”类别
    • 使用:您可以选择相应字段的使用。它将作为定义日志的人的参考,并且在开发日志传输时应根据使用情况正确应用。设置为“推荐”和“必需”的字段可以在段中使用。
      • 必需:指必须收集的字段。您必须将相应字段的值包含到游戏中。(例如:Vid 字段)
      • 推荐:指非常重要的字段。它是强烈建议收集的字段。您可以将“推荐”和“必需”字段作为段的条件。
      • 自动:指日志收集系统所需的字段,并且是自动生成的。(例如:通过客户端 IP 收集国家值的字段,使用 geoIpCountry 字段。)
      • 选择:指已收集但使用可选的字段。您在从服务器传输日志时不必发送此字段。
    • BigQueryID同步:您可以检查它是否与BigQuery正确同步。如果正确同步,您将看到“O”,如果同步日志时出现问题,您将看到“X”。如果您看到“X”,请联系数据技术团队(DW 部分)。
    • 您可以通过拖动字段信息表的行来更改字段的顺序。
  3. 添加字段
    • 添加字段:这是一个功能,您可以将先前定义的字段添加到日志中。您可以以与日志定义相同的方式添加字段。
    • 输入要添加的字段的详细信息,然后单击运行附加字段按钮以保存。
  4. ETL模拟
    • ETL模擬是一個功能,您可以檢查相應的日誌定義是否被正確收集。
    • 請求 - Json主體
      • 您可以檢查相應日誌的樣本Json,並點擊發送Json按鈕以檢查是否獲得正確的回應。
      • 當您點擊發送Json按鈕時,結果值將顯示在下面的回應區域。此外,收集狀態將在Json數據存儲服務器路徑中分階段顯示。
      • 點擊Json數據存儲服務器路徑按鈕,狀態值將顯示。您可以通過點擊BigQuery按鈕來檢查數據是否安全保存,並顯示最後保存的Json數據。
      • 請注意,使用此功能收集的樣本數據實際上是保存到數據庫中的,並且可能因日誌而有所不同。
  5. 數據樣本
    • 數據樣本:您可以檢查實際收集的日誌及其相應的定義。最多將顯示從最新到最舊的10條日誌。
    • 檢查最新待保存的數據:您可以通過刷新來顯示最新的日誌。
    • 查看更多:您可以查看更多頁面以檢查更多數據樣本。(下方圖片)
    • 您可以在數據樣本查看更多頁面上檢查過去7天的日誌,這是一個可以搜索字段的功能。您可以通過左右滾動來檢查所有字段。
    • 選擇字段:您可以選擇所有字段並使用所選字段的值進行搜索。
    • 比較方法:支持“=”,這是一種等效搜索和“Like”搜索方法。
    • 如果您想搜索特定的vid的日誌,請選擇vid字段,輸入vid,則只會顯示相應的vid的日誌。
  6. 創建客戶端來源
    • 創建客戶端來源:為每種語言創建相應日誌的客戶端來源。
    • 導出Json:將相應的日誌導出為Json。源將在新窗口中導出,您將能夠使用或修改導出的源。
    • 加載以定義新日誌:單擊此按鈕以定義與相應日誌相似的日誌,將顯示一個帶有已定義日誌的新日誌定義屏幕。
    • 刪除:刪除相應日誌的日誌定義。

將定義的日誌發送到伺服器對伺服器

雖然Hive Analytics v2 建議您透過Hive SDK v4 中的“6. 創建客戶端來源”所述的API 來傳輸日誌;您也可以通過伺服器對伺服器的方式將日誌發送到 Analytics v2

Fluentd” 將用於發送日誌。請參考下面的鏈接了解如何使用它。

Hive Analytics 結構 : Fluentd 類型
日誌定義伺服器到伺服器傳輸 : 使用 Fluentd

日誌數據驗證和修改過程

  • 除了在定义日志时提供的信息外,额外的数据验证和修改处理如下
  1. geoipCountry 添加
    • 如果存在 clientIp 字段,则用于执行 MaxMind DB 搜索以匹配 country
    • 如果 clientIp 不可用或搜索未成功,
      • 将使用 lang 字段中的值
      • lang 中的一些 country 值被更改和添加。

        校準前 校準後
        ko KR
        ja JP
        vi VN
        es ES
    • 如果最終無法確認country值,則將“ET”添加到geoIpCountry。
  2. clientIp 校準
    • class 4數據將被排除在記錄之外。
      • 例如) 127.0.0.1 → 127.0.0.0
  3. 使用appId的最終數據校準
    • 通過根據App Center數據中註冊的數據按appId進行搜索來添加空值
      • 市場
      • os
      • company
      • channel
        • 如果缺少channel字段,則添加"C2S"
      • sdkVer
      • appidGroup
      • appidCompany