app_session_maintain¶
This is an event that occurs every two minutes while the client is running after logging in, and can be used to generate metrics such as the number of concurrent users, number of sessions, and play time.
| Attribute name | Data type | Description |
|---|---|---|
| dateTime | TIMESTAMP | Indicates the date and time when the event occurred. It is recorded based on the time of event occurrence, and can be used as a basis for period unit (day/week/month/hour/minute) aggregation and date range searches. (Example: 2023-05-09 19:30:35) |
| eventName | STRING | Indicates a name that identifies the event. Since all events are loaded together in one source log, this value identifies which event it is and can be used as a standard for searching data on an event-by-event basis. (Example: app_login) |
| userId | STRING | Indicates the user identifier based on the account that triggered the event. It is recorded based on the unique user ID in the game, and can be used to count the number of unique users such as AU by deduplicating the number. |
| identifierProvider | STRING | Indicates the user identifier issuance system, and "hive" is fixed. |
| deviceId | STRING | Indicates the user identifier based on the terminal that generated the event. Each time an app is installed, it is recorded based on the instance value issued for each device, and can be used to count the number of unique devices (the number of terms and conditions agreed, etc.) by deduplicating the number. (Example: 33333333) |
| appIdGroup | STRING | Indicates the project where the event occurred. Hive is recorded based on the GAMEID value registered in the console app center, and can be used to compare indicators by dividing them by project when viewing multiple projects together. (Example: com.sample.analytics) |
| appId | STRING | Indicates the unique ID of the app where the event occurred. Hive is recorded based on APPID registered in the console app center, and can be used to distinguish indicators for each app. (Example: com.sample.analytics.google.global.android.common) |
| country | STRING | Indicates the country of the user identified at the time the event occurred. ISO 3166-1 alpha-2 It is recorded in uppercase format and can be used to compare the number of users, sales, retention, etc. by country. (Example: KR, US) |
| serverId | STRING | Indicates the game server the user connected to when the event occurred. It is recorded based on the server identifier sent by the game, and can be used to compare the number of users, sales, and retention by server. (Example: KR, GLOBAL) |
| market | STRING | Indicates the market where the user installed the game when the event occurred. It is recorded based on the market value where the app is installed or serviced, and can be used to compare indicators by market. (Example: GO(Google Play), AP(Apple App Store), HS(direct distribution)) |
| os | STRING | Indicates the operating system of the user terminal at the time the event occurred. It is recorded based on the platform value sent by the client, and can be used to compare indicators by OS. (Example: A(Android), I(iOS)) |
| clientIp | STRING | Indicates IP of the user terminal where the event occurred. It is recorded based on the masked value of the last section of IP, and can be used to query data such as the number of terminals for a specific IP band. (Example: 127.0.0.x) |
| sdkVer | STRING | Indicates the Hive SDK version at the time the event occurred. It is recorded based on the Hive SDK version value applied to the client, and can be used to compare the data collection status by SDK version. (Example: 4.16.2.2) |
| sessionId | INT(INTEGER) | Indicates the client session identification key of the event. It is recorded based on the key value that recognizes one client session, and can be used to count the number of sessions by deduplicating the number of sessions. (Example: 123) |
| playtime | INT(INTEGER) | Indicates the dwell time (in seconds) while maintaining a session. It is recorded based on the time remaining in the foreground between session maintenance event transmission terms, and can be used to calculate play time through total aggregation. (Example: 0, 120, 240) |
| playOutTime | INT(INTEGER) | Indicates the time of inactivity during session maintenance. It is recorded based on the inactive section time value transmitted from the session maintenance log, and can be used to calculate inactive time indicators through sum and average aggregation. |
| prevLatency | INT(INTEGER) | Indicates the delay value compared to the previous transmission of session keep-alive events. It is recorded based on the delay value from the previous transmission sent in the session maintenance event, and can be used to analyze the delay time by aggregating the average and maximum values. |
| activeTime | INT(INTEGER) | Indicates the actual play time (in seconds) while the session is maintained. It is recorded based on the actual play time (up to 120 seconds) in the foreground state after the previous transmission, and can be used to calculate the actual play time by summing and averaging. (Example: 120) |