macOS Application Data Collection
Introduction
After collecting application data to Guance, you can perform custom configuration scenarios and configure anomaly detection events through the Guance console.
Data Types
Guance's user access monitoring includes six types of data.
Type |
Description |
session |
Records user session information. During the current session, session-based data for user pages, resources, actions, errors, and long tasks are collected. |
view |
A view record is generated each time a user visits an application page. When a user stays on the same page, resource, long task, error, and action records are linked to the relevant RUM view via the view_id attribute. |
resource |
Records the loaded resource information when a user accesses a page. |
error |
Exceptions or crashes emitted by the application. |
long_task |
Any task in the application that blocks the main thread for longer than a specified duration threshold generates a long task event. |
action |
Records user activities within the application (such as app launches, clicks, swipes, back actions, etc.). Each action has a unique action_id . |
Global Attributes
Scenarios for user access monitoring and event alerts can be queried using the following global attributes.
SDK Attributes
Field |
Type |
Description |
sdk_name |
string |
Collector name, fixed names:
df_macos_rum_sdk
df_linux_rum_sdk
df_windows_rum_sdk
df_web_rum_sdk
df_miniapp_rum_sdk
df_ios_rum_sdk
df_android_rum_sdk |
sdk_version |
string |
Collector version information |
Application Attributes
Field |
Type |
Description |
app_id |
string |
Required, unique ID for user access applications, auto-generated when creating monitoring in the Guance console. |
env |
string |
Required, environment field. Possible values: prod/gray/pre/common/local. Where: prod: Production environment gray: Gray release environment pre: Pre-release environment common: Daily environment local: Local environment |
version |
string |
Required, version number. |
service |
string |
Optional, name of the associated business or service. Fixed names:
df_rum_ios
df_rum_macos
df_rum_android
df_rum_windows
df_rum_linux |
User & Session Attributes
Field |
Type |
Description |
userid |
string |
For unlogged users, a random UUID is used as userid ; for logged-in users, the user ID generated by the application backend is used. |
user_name |
string |
Optional, user name. |
user_email |
string |
Optional, user email. |
session_id |
string |
Session ID, a new session_id is generated if no operation occurs for more than 15 minutes. |
session_type |
string |
Session type. Reference values: user & synthetics user: Data generated by RUM functionality; synthetics: Data generated by headless tests. |
is_signin |
boolean |
Whether the user is registered, possible values: T & F. |
Device & Resolution Attributes
Field |
Type |
Description |
device |
string |
Device manufacturer |
model |
string |
Device model |
device_uuid |
string |
Unique device ID |
os |
string |
Operating system information |
os_version |
string |
Operating system version |
os_version_major |
string |
Major OS version |
screen_size |
string |
Screen resolution |
Geographic & Network Attributes
Field |
Type |
Description |
ip |
string |
User's IP address |
isp |
string |
Internet Service Provider |
network_type |
string |
Network connection type, reference values: wifi | 2g | 3g | 4g | 5g | unknown (unknown network) | unreachable (unavailable network) |
country |
string |
Country |
country_iso_code |
string |
Country ISO code |
province |
string |
Province |
city |
string |
City |
Custom Attributes
In addition to global attributes, custom attributes (SDK supports user-defined tag data) can be used to build scenarios and configure event alerts. Custom attributes are non-global attributes that allow tracking the entire process of user access to applications, identifying and discovering affected user access situations, and monitoring user access performance.
Other Data Type Attributes
Session
Properties
Field |
Type |
Description |
session_id |
string |
Session ID |
session_type |
string |
Session type. Reference values: user & test user: Data generated by RUM functionality; test: Data generated by headless tests. |
session_referrer |
string |
Session source. Usually records the URL of the source page. |
session_first_view_id |
string |
The view_id of the first page in the current session |
session_first_view_name |
string |
The URL of the first page in the current session |
session_last_view_id |
string |
The view_id of the last visited page in the current session |
session_last_view_name |
string |
The URL of the last page in the current session |
Statistics Metrics
Field |
Type |
Description |
time_spent |
number(ns) |
Duration of the current session |
session_view_count |
number |
Number of associated view_id s in the current session |
session_error_count |
number |
Number of errors in the current session |
session_resource_count |
number |
Number of resources loaded in the current session |
session_action_count |
number |
Number of user actions in the current session |
session_long_task_count |
number |
Number of long tasks in the current session |
View
Properties
Field |
Type |
Description |
view_id |
string |
Unique ID generated each time a page is visited |
view_referrer |
string |
Page source, parent page |
view_name |
string |
Page name |
Metrics
Field |
Type |
Description |
loading_time |
number(ns) |
Page loading time |
time_spent |
number(ns) |
Time spent on the page |
is_active |
boolean |
Indicates whether the user is still active, possible values: true & false |
Statistics Metrics
Field |
Type |
Description |
view_error_count |
number |
Number of errors during each page load |
view_resource_count |
number |
Number of resources requested during each page load |
view_long_task_count |
number |
Number of long tasks during each page load |
view_action_count |
number |
Number of actions during the page viewing process |
Monitoring Metrics
Field |
Type |
Description |
cpu_tick_count |
number |
Optional, CPU tick count for this page |
cpu_tick_count_per_second |
number |
Optional, average CPU ticks per second |
fps_avg |
number |
Optional, average frames per second |
fps_mini |
number |
Optional, minimum frames per second |
memory_avg |
number |
Optional, average memory usage for the page |
memory_max |
number |
Optional, peak memory usage for the page |
Resource
View Properties
Field |
Type |
Description |
view_id |
string |
Unique ID generated each time a page is visited |
view_referrer |
string |
Page source, parent page |
view_name |
string |
Page name |
Action Properties
Field |
Type |
Description |
action_id |
string |
Unique ID generated when a user performs an action on a page |
action_name |
string |
Action name |
action_type |
string |
Action type (cold/hot start, click, etc.) |
Resource Properties
Field |
Type |
Description |
resource_url |
string |
Resource URL |
resource_url_host |
string |
Domain part of the resource URL |
resource_url_path |
string |
Path part of the resource URL |
resource_url_query |
string |
Query part of the resource URL |
resource_url_path_group |
string |
Grouped path part of the resource URL |
resource_type |
string |
Category of the resource |
resource_method |
string |
HTTP method used for the request |
resource_status |
string |
Status code returned by the resource request |
resource_status_group |
string |
Grouped status code returned by the resource request |
Metrics
Field |
Type |
Description |
resource_size |
number |
Size of the resource, default unit: byte |
resource_dns |
number(ns) |
DNS lookup time for resource loading Calculated as: domainLookupEnd - domainLookupStart |
resource_tcp |
number(ns) |
TCP connection time for resource loading Calculated as: connectEnd - connectStart |
resource_ssl |
number(ns) |
SSL handshake time for resource loading Calculated as: connectEnd - secureConnectStart |
resource_ttfb |
number(ns) |
Time to first byte for resource loading Calculated as: responseStart - requestStart |
resource_trans |
number(ns) |
Content transfer time for resource loading Calculated as: responseEnd - responseStart |
resource_first_byte |
number(ns) |
First byte time for resource loading Calculated as: responseStart - domainLookupStart |
duration |
number(ns) |
Total resource loading time Calculated as: duration (responseEnd-startTime) |
request_header |
string |
Request headers for the resource |
response_header |
string |
Response headers for the resource |
Error
View Properties
Field |
Type |
Description |
view_id |
string |
Unique ID generated each time a page is visited |
view_referrer |
string |
Page source, parent page |
view_name |
string |
Page name |
Action Properties
Field |
Type |
Description |
action_id |
string |
Unique ID generated when a user performs an action on a page |
action_name |
string |
Action name |
action_type |
string |
Action type (cold/hot start, click, etc.) |
Error Properties
Field |
Type |
Description |
error_source |
string |
Source of the error, reference values: logger | network |
error_type |
string |
Type of the error logger error type: java_crash | native_crash | anr_error | anr_crash | ios_crash network error type:network_error |
error_situation |
string |
Situation when the error occurred, reference values: startup (at startup) and run (during runtime) |
When type=network
, additional Network Error properties are added.
Field |
Type |
Description |
resource_status |
string |
Status code returned by the resource request |
resource_url |
string |
Resource URL |
resource_url_host |
string |
Domain part of the resource URL |
resource_url_path |
string |
Path part of the resource URL |
resource_url_path_group |
string |
Grouped path part of the resource URL |
resource_method |
string |
HTTP method used for the request |
Error Monitoring Properties
Field |
Type |
Description |
memory_total |
string |
Optional, total memory |
memory_use |
number |
Optional, memory usage rate |
cpu_use |
number |
Optional, CPU usage rate |
battery_use |
number |
Optional, current device battery level |
locale |
string |
Current system language |
Metrics
Field |
Type |
Description |
error_message |
string |
Error message |
error_stack |
string |
Error stack trace |
Long Task
View Properties
Field |
Type |
Description |
view_id |
string |
Unique ID generated each time a page is visited |
view_referrer |
string |
Page source, parent page |
view_name |
string |
Page name |
Action Properties
Field |
Type |
Description |
action_id |
string |
Unique ID generated when a user performs an action on a page |
action_name |
string |
Action name |
action_type |
string |
Action type (cold/hot start, click, etc.) |
Metrics
Field |
Type |
Description |
duration |
number(ns) |
Duration of the freeze |
long_task_message |
string |
Freeze message |
long_task_stack |
string |
Freeze stack trace |
Action
View Properties
Field |
Type |
Description |
view_id |
string |
Unique ID generated each time a page is visited |
view_referrer |
string |
Page source, parent page |
view_name |
string |
Page name |
Action Properties
Field |
Type |
Description |
action_id |
string |
Unique ID generated when a user performs an action on a page |
action_name |
string |
Action name |
action_type |
string |
Action type (cold/hot start, click, etc.) |
Metrics
Field |
Type |
Description |
duration |
number(ns) |
Time taken for the page action |
Statistics Metrics
Field |
Type |
Description |
action_long_task_count |
number |
Number of long tasks associated with the action |
action_resource_count |
number |
Number of resource requests associated with the action |
action_error_count |
number |
Number of errors associated with the action |