コンテンツにスキップ

イベント保存構造

概要

送信されたイベントログが BigQuery に格納される構造、attributes JSON フィールドの詳細構造、転送ルールに違反したログの分離方法を確認できます。


テーブル構造

送信されたイベントログは、会社固有のBigQueryデータセットのt_raw_event_logテーブルに保存されます。

テーブル列構造

保存場所

アイテム フォーマット
テーブル t_raw_event_log
パーティショニング dateTime基準日別パーティション

列定義

列名 データ型 説明
userId STRING 必須属性 userId として送信された値 100001
identifierProvider STRING 必須属性 identifierProvider として送信された値 hive
deviceId STRING 必須属性 deviceId として送信された値 100000
appId STRING 必須属性 appId として送信された値 "com.com2us.game.ios"
appIdGroup STRING 必須属性appIdに基づいてHiveアプリセンターのゲーム名に変換された値 com.com2us.game
dateTime TIMESTAMP 必須属性eventTimeをUTCに変換した値 2026-07-20T05:01:01Z
eventName STRING 必須属性 eventName として送信された値 asset_drop
checksum STRING イベントごとに生成されるハッシュ値 HW2FTEB56TEEWER
bigqueryRegistTimestamp TIMESTAMP イベントがBigQueryに格納されているUTC時刻 2026-07-20T05:02:01Z
attributes JSON カスタム属性と自動収集属性を格納するJSONフィールド 以下を参照してください。

attributes 例

{
  "hiveAttributes": {
    "dataSource": "custom_server",
    "geoIpCountry": "KR"
  },
  "eventAttributes": {
    "eventTime": "2026-07-20T14:01:01+09:00",
    "level": 10,
    "character_name": "AA",
    "stage_id": "stage_101"
  }
}

テーブル構造に関する注意事項 & Tips

  • 再送信などで同じイベントが重複して保存される可能性があるため、照会時にchecksum基準重複排除クエリを一緒に使用することをお勧めします。
  • 転送ルールに違反したイベントログは、このテーブルではなくテーブルに保存されます。詳細については、データ分離を参照してください。

attributes詳細属性

Note

attributes 列は JSON タイプで、hiveAttributeseventAttributes の 2 つの領域に分けられます。

attributes 例

{
  "hiveAttributes": {
    "dataSource": "custom_server",
    "geoIpCountry": "KR"
  },
  "eventAttributes": {
    "eventTime": "2026-07-20T14:01:01+09:00",
    "level": 10,
    "character_name": "AA"
  }
}

hiveAttributes

パイプラインが自動的に処理して保存する領域。

属性名 データ型 説明
dataSource STRING イベントログの転送主体。以下dataSource詳細を参照 custom_server
geoIpCountry STRING パイプラインがIPに基づいて判定した国コード(ISO 3166 alpha-2) KR

dataSource詳細

dataSource はイベントログの転送プリンシパルを表し、次のいずれかの値が自動的に設定されます。

説明
airbridge Airbridgeで収集されたイベント
appsflyer Appsflyerで収集されたイベント
adjust Adjustで収集されたイベント
singular Singularで収集されたイベント
hive_server Hive認証、ビリングなどを介して自動的に収集するイベント
hive_sdk Hive SDKが自動的に収集するファンネルなどのイベント
custom_server 顧客がサーバーから送信するカスタムイベント
custom_sdk 顧客がHive SDKのイベントログ送信機能を介して送信するカスタムイベント
custom_sdk_mig 顧客がHive SDKのイベントログ送信機能を介して旧バージョンのアナリティクスに送信するカスタムイベント
custom_server_mig 顧客がサーバーから旧バージョンのアナリティクスに送信するカスタムイベント
custom_except イベント遷移中に例外的なケースにeventAttributehiveAttributeを生成して送信するイベント

eventAttributes

ユーザーが送信した属性とSDKが自動的に収集した属性が格納される領域です。

属性名 データ型 説明
eventTime STRING 必須属性として送信された eventTime の元の値
(ユーザー定義属性) 数字/文字 ユーザーが直接送信したカスタム属性
(自動収集属性) 属性別に異なる SDKが自動的に収集したクライアント情報(クライアント転送時)

attributes 注意事項 & Tips

  • hiveAttributes は開発者が直接値を設定する領域ではなく、パイプラインが自動的に埋める領域です。 dataSourcegeoIpCountry 以外の値は保存されません。
  • カスタム属性とSDK自動収集属性はどちらもeventAttributesにまとめて保存されます。照会時に属性名で区切る必要があります。
  • dataSource 値でイベントログの転送パス(SDK/サーバー/MMP など)を区分して照会できます。

データの分離

Warning

転送ルールに準拠していないイベントログは、通常テーブル(t_raw_event_log)には保存されず、**分離テーブル(t_raw_event_log_rescue)**に別々に保存されます。 検疫テーブルには元のJSONが一緒に保存されるため、検疫の原因を特定して修正して再送信できます。


分離理由

エラー理由 説明 対応方法
必須属性の欠落 7つの必須属性(userIdidentifierProviderdeviceIdappIdeventTimeeventNameappIdGroup)のいずれかがない、または値が空 欠落している必須属性を含めて再送信
予約語の使用 属性名としてattributeseventAttributeshiveAttributesを使用した場合(大文字小文字無関係) その属性名を別の名前に変更します。
許可されていない属性値 属性値が JSON オブジェクト ({}) または JSON 配列 ([]) の場合 属性値を文字列または数値に変更します。
eventTimeフォーマットエラー eventTime が RFC 3339 形式でないか、解析できない場合 RFC 3339形式に変更(タイムゾーンを含む)
eventTime範囲超過 eventTimeが現在の時刻基準で過去31日または将来31日を超えている場合 eventTime 値を確認して正常範囲に変更
JSON解析失敗 送信されたメッセージが有効なJSON形式でない場合 JSONフォーマット検証後の再送信

分離テーブル構造

孤立したイベントログは、t_raw_event_log_rescue テーブルに次の構造で保存されます。

列名 データ型 説明
userId STRING 送信されたuserId(解析可能な場合)
identifierProvider STRING 送信されたidentifierProvider
deviceId STRING 送信されたdeviceId
appIdGroup STRING 送信されたappIdGroup
dateTime STRING 送信されたeventTime元の値(文字列のまま保存、TIMESTAMP以外)
eventName STRING 送信されたeventName
bigqueryRegistTimestamp TIMESTAMP BigQuery保存時間
checksum STRING ハッシュ値
rawData STRING 送信されたオリジナルJSONフル
errorReason STRING 分離理由コード
errorStackTrace STRING 隔離の詳細(欠けているフィールド名など)

関連メニュー