All Products
Search
Document Center

Application Real-Time Monitoring Service:Log data description

Last Updated:Aug 12, 2024

This topic describes the data in User Experience Monitoring logs.

Overview

User experience monitoring logs contain detailed tables and aggregate tables.

Details tables: View, Resource, Exception, Action, Custom, Application, and System.

Aggregate table: Session table

The Application and System tables are used only by native App Monitoring.

Terms

  • Attribute: an index, which is generally of the String type. It is used to group, filter, and aggregate data. It cannot be quantified but has limited enumerability and indexes.

  • Measure: an index, which is of the number type and can be quantified.

  • Metadata: the default non-index, which is used to describe data, mainly describes the information of data attributes.

Common attributes

Public properties need to be indexed and are an important part of data filtering and aggregation. They will exist in both parts tables and aggregate tables. In most cases, the value of a common property for a session ID is the same. However, the value of a common property may be different. For example, the value of a common property for a session ID may be different after the account is switched.

Attribute

Type

Metric

Description

timestamp

long

Occurred At

The start time of the event. If no time is available, the system time is used.

event_type

string

Event types

view, resource, exception, longtask, action, custom, and aggregate table session.

event_id

string

The ID of the event.

resource, exception, longtask, action, and custom except view and session.

app.id

string

Application ID

Create a unique application ID generated by the RUM application.

app.version

string

Application version

User-defined version number.

app.channel

string

Application Channel

Application channels.

app.env

string

Environment information

The environment type, which is used to distinguish between production pords (default), grayscale, and pre-release.

app.type

string

The type of the application.

The type of the application when the corresponding user creates the application, which is specified by both Reports and Data Streams. Valid values:

  • android

  • ios

  • browser

  • miniapp

app.package

string

The name of the specified application package.

Package has different definitions for different platforms:

  • Android:PackageName

  • iOS:BundleIdentifier

  • Applet: AppId

  • Browser: User Defined

user.id

string

The ID of the user.

The ID of the user. This parameter can be passed in when you initialize the SDK. If you do not configure the SDK, it is randomly generated.

user.name

string

The name of the user.

The name of the user. You need to customize the configuration.

user.tags

string

The tags of the user.

The label of the user.

device.id

string

The device ID.

The device ID.

device.type

string

The device type.

The device type reported by the device, for example, mobile phone, PC.

device.brand

string

The brand of a device.

The device brand reported by the device, for example, Mac, iPad, Huawei, and Xiaomi.

device.model

string

The device model.

Device model reported by the device.

device.name

string

The name of the device.

The device name reported by the device.

os.type

string

Supported operating systems

The operating system name reported by the device.

os.version

string

Operating system version

The operating system version reported by the device.

os.container

string

Container Type

Examples: Chrome, WeChat mini program, and App (application name).

os.container_version

string

Container version

For example, the version of Chrome.

geo.country

string

Country or region

The country name.

geo.country_id

string

National ISO

The ISO code of the country.

geo.province

string

Province /Region

The name of the province or region.

geo.province_id

string

The region. Code

The code of the province or region.

geo.city

string

The city.

The city name.

geo.city_id

string

The city. Code

The city code.

isp.id

string

The ID of the service provider.

The ID of the carrier.

isp.name

string

The ISP name.

The ISP name.

net.model

string

Access modes

Network access method: 2G, 3G, 4G, 5G, WIFI, Unknown, etc., based on the specific platform information.

net.name

string

Network Name

The Ethernet name.

Public Measure

Metric

Type

Description

times

int

The number of times that the event occurs. Default value: 1.

Public Metadata

Parameter

Type

Description

os.user_agent

string

The report request header.

net.ip

string

Client IP address

device.sr

string

The screen resolution.

os.container_vp

string

The resolution of the page size.

Schedule Design

View table

An interactive user view that focuses on page view and related performance data. View is a classification of views and is divided into:

  • PV: used to calculate the number of views accessed. Each time a view is accessed, the PV must be reported. It is the basic data that is associated with various events and calculates various time series metrics.

  • Webvitals: based on the three major indicators of view performance proposed by Google. Due to the large difference in collection timing and clear standard boundaries, separate storage is adopted.

  • Perf: a common performance data of views, which is a relatively miscellaneous indicator category. Based on the Perfmonce standard, this type focuses on the objective performance of the page, and the performance that can be changed subjectively is not included ().

    Note

    Look at the performance of subjective changes such as: page stay duration. From a definition point of view, the page stay duration is a kind of user behavior data, which is more reasonable to manage in Action.

Webvitals and Perf are optional reporting types, and native views may not be applicable.

Attributes

Attribute

Type

Metric

Description

session.id

string

The session ID.

The associated session.

view.id

string

View ID

A randomly generated ID for each page view.

view.name

string

View name

The alias of a type of view is the path part of the URL by default, which can be matched based on rules or configured by users.

view.loading_type

string

View loading mode

View Load Type:

  • initial_load

  • route_change

view.type

string

View Event Types

View Event Type:

  • pv

  • perf

view.view_type

string

View Rendering Type

-

Measures

Property

Type

Metric

Description

view.time_spent

long (ms)

Page

Time spent on the current view.

view.largest_contentful_paint

long (ms)

Maximum Content Rendering Duration

The moment in the page load timeline at which the largest DOM object in view (visible on the screen) is rendered. Greater than 2.5 seconds is marked as slow.

view.first_input_delay

long (ms)

First Input Delay Duration

The time elapsed between the user's first interaction with the page and the browser's response.

view.cumulative_layout_shift

long

Cumulative Layout Configuration Offset

Quantifies unexpected page movement due to dynamically loaded content, such as third-party ads, where 0 means no change has occurred.

view.first_contentful_paint

long (ms)

The duration of the first content rendering (white screen time)

The time when the FCP browser first renders the text, image (including the background image), non-white Canvas, or SVG.

view.dom_interactive

long (ms)

The Time to Interactive (TTI).

The time when the content can be interacted.

view.dom_content_loaded

long (ms)

HTML Full Load Time (DOM Ready Duration)

event is fired when the initial HTML document is fully loaded and parsed without waiting for non-rendering blocking stylesheets, images, and subframes to finish loading.

view.dom_complete

long (ms)

DOM

The page and all child resources are ready. Rotation has been stopped for user Loading.

view.load_event

long (ms)

The time consumed to completely load the page.

The event that fires when the page is fully loaded. Usually triggers for additional application logic.

Note

Page load times of less than 2 seconds are considered good, and up to 4 seconds are acceptable. A page loading time of more than 5 seconds not only affects the search engine ranking of the website, but also seriously affects the user experience.

Metadata

Attribute

Type

Description

view.referrer

string

The URL of the previous web page from which to link to the currently requested page.

view.url

string

The URL corresponding to the view. The complete URL contains the scheme protocol, host, path, query, and hash parts.

view.timing_data

string

The PerformanceResourceTiming JSONString.

view.snapshots

string

View snapshot JSONString, which is mainly used for native apps.

Resource table

Resource events are generalized for network requests and are a RUM event type developed based on the HTTP protocol and the Perfmonce standard. Because Perfmonce has many differences in different platform environments, RUM has made corrections for these differences.

From the perspective of business and habits, resources are divided into two categories: static resources and APIs. In essence, static resources and APIs are the same. They are resources requested by HTTP, but there are major differences in concerns, as follows:

  • Static resources (resource.type is css, javascript, image, media, etc.) focus on resource type, Alibaba Cloud Content Delivery Network, network stability, etc. If the resource.type parameter is set to navigation, the resource data of the associated view (with the same view.id) is returned.

  • APIs (resource.type is XHR, fetch, and API) pay more attention to the association with the server, such as response codes and response content, and have strong association with tracing.

    XHR and fetch mainly occur in browsers and WebViews, or in scenarios with similar regularity.

    API is the default value when you are unsure of the API type, which is common in native and applet cases.

In most cases, a resource only focuses on the actual network request, and does not report the recommend filter before reporting the information obtained from the cache. For situations that do have reporting value (such as calculating the cache hit ratio and resource usage), you need to cache mark this type to distinguish the resources that initiate network requests.

Attributes

Property

Type

Description

session.id

string

The associated session.

view.id

string

The associated view.

view.name

string

The associated view.name.

resource.type

string

The type of the collected resource. For example, css, javascript, media, XHR, image, and navigation.

Note

If the resource type is XHR or fetch, the resource type is considered an API.

resource.method

string

The HTTP request method. such as POST and GET.

resource.status_code

string

Resource status code.

resource.message

string

The content of the returned result when a common error occurs, corresponding to the resource.error_msg.

resource.url

string

The URL of the resource.

resource.name

string

The default value is the Path part of the URL, which can be matched based on rules or actively configured by users.

resource.provider_type

string

The type of the resource provider. Such as: first-party, Alibaba Cloud Content Delivery Network, ad, analytics.

resource.trace_id

string

The TraceID of the resource request.

Measure

Metric

Type

Description

resource.success

number

Whether the resource is loaded successfully:

  • 1 (default): success

  • 0: The data volume failed.

resource.duration

long (ms)

Total time spent loading the resource.

Calculation formula: responseEnd-redirectStart

resource.size

long (bytes)

The size of the resource, which corresponds to the decodedBodySize.

resource.connect_duration

long (ms)

The time taken to establish a connection with the server.

Calculation formula: connectEnd-connectStart

resource.ssl_duration

long (ms)

Time spent on TLS handshake. This metric does not appear if the last request is not over HTTPS.

Calculation formula: connectEnd - secureConnectionStart

If the value of secureConnectionStart is 0, the SSL connection is not initiated. In this case, ssl_duration is not calculated, and the value of ssl_duration is 0.

resource.dns_duration

long (ms)

The time it took to resolve the DNS name of the last request.

Calculation formula: domainLookupEnd - domainLookupStart

resource.redirect_duration

long (ms)

The time when the HTTP request was redirected.

Calculation formula: redirectEnd-redirectStart

resource.first_byte_duration

long (ms)

The TTFB indicates the period from the time when the browser makes the request to the time when the browser receives the first byte of the page.

Calculation formula: responseStart-requestStart

resource.download_duration

long (ms)

The time taken to download the response.

Calculation formula: responseEnd-responseStart

Metadata

Property

Type

Description

resource.timing_data

string

The PerformanceResourceTiming JSONString.

resource.trace_data

string

Tracing Analysis information snapshot:

{
  "propagatorType": "tracecontext",
  "traceId": "57599e11233cc6ebe1a3f539bbb1f238",
  "spanId": "3be6827e9b4f0956",
  "sample": 1,
}

resource.snapshots

string

View snapshots, which are primarily used for native app inclusion.

"resource.flavor": "1.0",
"resource.client.tcp.ip": "127.0.0.1",
"resource.client.tcp.port": 8080,
"resource.request.content_length": 1024,
"resource.request.header.content_type": [
   "application/json"
],
"resource.request.header.accept_encoding": [
   "gzip",
   "deflate",
   "br"
],
"resource.response.content_length": 2048,
"resource.response.header.eagleid": [
   "670f632716687515436056344e"
],

resource.node_name

string

The type of the DOM that initiates the request.

resource.xpath

string

The location where the xpath occurs.

html. > body. > img.

resource.provider_name

string

The name of the resource provider. Default value: unknown.

resource.provider_domain

string

The domain name of the resource provider.

Exception table

An exception is an unexpected occurrence during code execution.

  • Crash: The application crashes.

  • ANR: The Android application does not respond (Application No Responding). If a specific message (such as Key Dispatch, Broadcast, and Service) is not processed within the specified time within the UI thread (main thread) of the application, an ANR exception will be triggered. By definition, ANR has all the characteristics of an exception and is a type of Exception, not LongTask.

  • Exception: no other exceptions that cause Crash or ANR.

  • Custom: the custom error that is reported by the user.

  • Error: mainly used to record JavaScript-related errors.

  • Blank: used for white screen monitoring, mainly for the white screen situation under the browser.

Attributes

Property

Type

Description

session.id

string

The associated session.

view.id

string

The associated view.

view.name

string

The associated view.name.

exception.source

string

The source of the error. Examples: console and event.

exception.file

string

The error file.

exception.type

string

Error types include:

  • crash

  • custom (custom error)

  • error (execution error)

exception.subtype

string

is a level 2 category of the wrong type

exception.name

string

The error.

exception.message

string

A concise and readable message that explains the event.

Metadata

Property

Type

Description

exception.stack

string

Stack trace or supplemental information about the error.

exception.caused_by

string

The cause of the error.

exception.line

long

The number of lines of code where the exception occurred.

exception.column

long

The number of columns in the code where the exception occurred.

exception.thread_id

string

The thread ID.

exception.binary_images

string

The source of the error.

exception.snapshots

string

Error snapshot.

Action table

Attributes

Properties

Type

Description

session.id

string

The associated session.

view.id

string

The associated view.

view.name

string

The associated view.name.

action.type

string

The type of user behavior.

action.name

string

The semantic name. For example, click# checkout.

action.target_name

string

The element with which the user interacts. For actions that are automatically collected only.

Measure

Metric

Type

Description

action.duration

long (ms)

The duration of the behavior.

Metadata

Property

Type

Description

action.snapshots

string

Behavior snapshots.

action.method_info

string

Behavior callback. Example: onClick().

Custom table

Attributes

Property

Type

Description

session.id

string

The associated session.

view.id

string

The associated view.

view.name

string

The associated view.name.

custom.type

string

The custom type.

custom.name

string

Enter a custom name for the event.

custom.group

string

The custom event group.

Measure

Property

Type

Description

custom.value

number

The custom event group.

Metadata

Property

Type

Description

custom.snapshots

string

The characters in length can be up to 5000 characters in length.

Application table

Application-level events, such as cold and hot start, application exit, and application cut-out and cut-in.

Attributes

Property

Type

Description

session.id

string

The associated session.

application.type

string

Enumeration type:

  • launch

  • exit: Exit

  • background: background

  • forward

application.name

string

As a fine-grained type of application.type, such as:

  • cold-lunch: cold start

  • hot-lunch: warm start

  • first-lunch

  • background: background

  • forward

Measure

Metric

Type

Description

application.duration

long(ms)

The duration of the corresponding application event type.

Metadata

Property

Type

Description

application.snapshots

string

The snapshot data of the application startup event, which is generally a thread method.

System table

Attributes

Properties

Type

Description

session.id

string

The associated session.

system.type

string

The type of user behavior.

system.name

string

The semantic name. For example, click# checkout.

Metadata

Properties

Type

Description

system.snapshots

string

"sys.net_change.before.ip": "1.1.XX.XX",
"sys.net_change.before.standard": "wifi",
"sys.net_change.after.ip": "2.2.2.2",
"sys.net_change.after.standard": "4G",

Aggregate Table Design

Session table

Attributes

Attribute

Type

Description

session.id

string

A randomly generated ID for each session.

session.ip

string

The IP addresses of the client.

session.referrer

string

The URL of the previous web page from which to link to the currently requested page.

session.initial_view_id

string

The first view ID generated by the user.

session.initial_view_name

string

The first user-generated View Name.

session.last_view_id

string

The last View ID generated by the user.

session.last_view_name

string

The last View Name generated by the user.

session.start

long

The start timestamp of the session.

session.end

long

The end timestamp of the session.

Metadata

Property

Type

Description

session.initial_view.url

string

The first View URL generated by the user.

session.last_view_url

string

The last View URL generated by the user.

Measure

Metric

Measurement

Index name

Description

session.time_spent

long (ms)

Session Duration

The duration of the user session.

session.view_count

long

Number of views

All views collected for this session.

session.exception_count

long

Abnormal quantity

A count of all exceptions collected for this session.

session.resource_count

long

Number of resource requests

A count of all resources collected for this session.

session.resource_error_count

long

Number of resource errors

A count of all error resources collected for this session.

session.api_count

long

Number of API requests

A count of all API requests collected for this session.

session.api_error_count

long

Number of API errors

A count of all API request errors collected for this session.

session.action_count

long

Number of user events

A count of all operations collected for this session.

session.long_task_count

long

Catton times

A count of all long tasks collected for this session.