Browser Monitoring fields
Application Real-Time Monitoring Service (ARMS) Browser Monitoring collects telemetry data and stores it in Log Service. Each log entry contains fields that describe the event. Use these fields to build log queries, create dashboards, and debug browser performance issues in Log Service.
Every log entry includes a t field that identifies the event type, a set of common fields shared across all event types, and event-specific fields unique to each type.
Event types
The t field determines the event type of each log entry.
Value of | Event type | Description |
| API call | Tracks API requests initiated from the page, including status codes and response times. |
| Page view | Records page visits. Used to calculate page view (PV) and unique visitor (UV) metrics. |
| Performance | Captures page load timing metrics such as DNS, TCP, TTFB, and First Paint. |
| Health | Summarizes per-page health: error counts, API success/failure counts, and page stay duration. |
| Custom speed | Reports custom data transmission rates. Specify a keyword from |
| User behavior | Captures user interactions (clicks, navigations) leading up to an error. |
| JavaScript error | Reports JavaScript runtime errors with stack traces and source locations. |
| Resource error | Reports failed resource loads (images, scripts, stylesheets). |
| Sum | Reports a custom sum value for a named event. |
| Average | Reports a custom average value for a named event. |
| Percent | Reports a custom percent value for a named event. |
| Custom | Reports custom key-value pairs. Field names cannot exceed 20 characters and are automatically prefixed with |
Common fields
These fields appear in every log entry, regardless of event type.
Device and browser
Field | Type | Example | Description |
| string |
| Browser name. |
| string |
| Browser version. |
| string |
| Device model or name. |
| string |
| Device type. |
| string |
| Browser rendering engine. |
| string |
| Rendering engine version. |
| string |
| Operating system. |
| string |
| Operating system version. |
| string |
| Screen resolution in pixels (width x height). |
| string |
| Viewport size in pixels (width x height). |
| string |
| Full user agent string. |
Network and geolocation
Field | Type | Example | Description |
| string |
| Network connection type. |
| string |
| Client IP address. |
| string |
| Country derived from the client IP. |
| string |
| ISO 3166-1 alpha-2 country code. |
| string |
| Province or state derived from the client IP. |
| string |
| Administrative division code for the province or state. |
| string |
| City derived from the client IP. |
| string |
| Administrative division code for the city. |
| string |
| Internet service provider. |
Session and identity
Field | Type | Example | Description |
| string |
| User ID. |
| string |
| Session ID. |
| string |
| Page view ID. |
Page and environment
Field | Type | Example | Description |
| string |
| Page URL path. |
| string |
| Monitored site URL. |
| string |
| HTTP Referer header value. |
| string |
| Deployment environment. |
| string |
| Application release version. |
Timestamps and sampling
Field | Type | Example | Description |
| number (ms) |
| Timestamp when the event was generated on the client, in Unix epoch milliseconds. |
| number (ms) |
| Defaults to the value of |
| number |
| Global sampling rate. |
| number |
| Sampling rate for page view events. |
| number |
| Sampling rate for API events. |
| number |
| Sampling rate for health events. |
| number |
| Sampling rate for resource error events. |
Other common fields
Field | Type | Example | Description |
| string |
| Event type. |
| number |
| Occurrence count for similar events batched together. |
| string |
| DOM node path. |
| string |
| Cache-busting token. |
Log storage tables also contain auxiliary fields prefixed with an underscore (_), such as _line, _v, and _target. These fields are generated during internal data processing and are not relevant to your queries. You can ignore them.
API fields (t: api)
Logged when the Browser Monitoring SDK intercepts an API request.
Field | Type | Example | Description |
| string |
| Page from which the API request was sent. |
| string |
| Request URL path. |
| number |
| Whether the request succeeded. |
| number (ms) |
| Request duration in milliseconds. |
| string |
| HTTP response status code. |
| string |
| Response message body. |
| string |
| Trace ID associated with the request, used for end-to-end tracing. |
| string |
| Page view ID that this request belongs to. |
Sample payload:
t: api
times: 1
page: tracing/list/cn-hangzhou
environment: prod
begin: 1638178731302
api: /api/trace.json
success: 1
time: 63
code: 200
msg: success
traceId: 7eb784eb16381787313011******
pv_id: 7ekzzwImkbyhU5bIeiX0v9******
domain: arms.console.aliyun.com
sr: 1680x1050
vp: 1628x946
ct: 4g
sampling: 1Page view fields (t: pv)
Logged on each page visit.
Field | Type | Example | Description |
| string |
| Page view ID. |
| string |
| Page title. |
| string |
| Document referrer. |
| number |
| Device pixel ratio. |
| string |
| Document character encoding. |
| string |
| Document language. |
| string |
| Full page URL. |
Sample payload:
t: pv
times: 1
page: tracing/callChains/cn-hangzhou
environment: prod
begin: 1638179112949
dt: Application Real-Time Monitoring Service (ARMS)
dpr: 1.00
de: utf-8
ul: zh
sr: 1680x1050
vp: 1628x946
ct: 4g
pv_id: Rhksdwe1kFLhhXjwqp159******
sampling: 1
dl: https://arms.console.aliyun.com/#/tracing/callChains/cn-hangzhouHealth fields (t: health)
Logged to summarize the overall health of the page session. Reported in the same cadence as PV events.
Field | Type | Example | Description |
| number |
| Total JavaScript error count during this page view. |
| number |
| Number of successful API calls. |
| number |
| Number of failed API calls. |
| number |
| Page health status. |
| number (ms) |
| Time the user spent on the page, in milliseconds. The minimum reported value is 2,000 ms. Because health events follow the same reporting cadence as PV events, rapid page switches may cause the reported API counts to be lower than the actual totals. |
Sample payload:
t: health
times: 1
page: tracing/callChains/cn-hangzhou
environment: prod
begin: 1638178731334
errcount: 0
apisucc: 42
apifail: 0
healthy: 1
stay: 1647744
pv_id: Iakvsw01ktagjzcpz773g******
sampling: 1Performance fields (t: perf)
Logged once per page load to capture navigation and paint timing metrics. All timing values are in milliseconds.
Navigation timing
Field | Type | Example | Description |
| number (ms) |
| Time consumed for DNS lookup. |
| number (ms) |
| Time consumed for TCP connection. |
| number (ms) |
| Time consumed for SSL connection. |
| number (ms) |
| Time to First Byte (TTFB). The period from the time when the browser makes the request to the time when the browser receives the first byte of the page. |
| number (ms) |
| Time consumed for data transmission. |
| number (ms) |
| Time consumed for DOM resolution. |
| number (ms) |
| Time consumed for resource loading. |
| number (ms) |
| The period from the time when the browser starts the domain name lookup for the resource to the time when the browser receives the first byte of the page. |
Paint and interactivity timing
Field | Type | Example | Description |
| number (ms) |
| First Paint Time (FPT). Time until the browser renders the first pixel to the screen. |
| number (ms) |
| Time to Interactive (TTI). Time until the page is fully interactive. |
| number (ms) |
| Time consumed to load an HTML page, namely, the time consumed to construct the DOM. |
| number (ms) |
| Time consumed to completely load the page. |
| number (ms) |
| First Meaningful Paint (FMP). Time until the primary above-the-fold content is visible. |
| string |
| The method used to load the page. Valid values: |
Fields t1 through t10, ctti, and cfpt are reserved for manually reported custom performance data. Only perf events contain these fields.
Sample payload:
t: perf
times: 1
page: arms.console.aliyun.com
environment: prod
begin: 1638183632694
dns: 12
tcp: 17
ssl: 14
ttfb: 426
trans: 3
dom: 1760
res: 1466
firstbyte: 455
fpt: 479
tti: 2239
ready: 2243
load: 3709
ct: 4g
bandwidth: 10
navtype: Reload
fmp: 4374
autoSend: true
sr: 2560x1440
vp: 1293x1336
sampling: 1Behavior fields (t: behavior)
Logged when errors occur to capture the sequence of user interactions leading up to the error. The behavior array in the request body records each interaction with its type, data, timestamp, and page.
Interaction types include:
ui.click-- Records the CSS selector path of the clicked element.navigation-- Records thefromandtoURLs of a page transition.
Sample payload:
t: behavior
times: 1
page: arms.console.aliyun.com%2Fapm
environment: prod
begin: 1638184741074
pv_id: shkRqwIpkLak92ttv8ne6******
sampling: 1
requestBody:
{
"behavior": [
{
"type": "ui.click",
"data": {
"message": "div%23.next-menu-item-inner%20%3E%20span%23.next-menu-item-text%20%3E%20a%23."
},
"timestamp": 1638184607432,
"page": "/apm"
},
{
"type": "navigation",
"data": {
"from": "https://arms.console.aliyun.com/apm?pid=xxx%40xxx®ionId=cn-hangzhou#/aokcdqn3ly@4a331e0c0dcbd46/home",
"to": "https://arms.console.aliyun.com/apm?pid=xxx%40xxx®ionId=cn-hangzhou#/aokcdqn3ly@4a331e0c0dcbd46/timedTask"
},
"timestamp": 1638184607433,
"page": "/apm"
},
{
"type": "ui.click",
"data": {
"message": "ul%23.next-tabs-nav%20%3E%20li%23.next-tabs-tab%20%3E%20div%23.next-tabs-tab-inner"
},
"timestamp": 1638184617802,
"page": "/apm"
},
{
"type": "navigation",
"data": {
"from": "https://arms.console.aliyun.com/apm?pid=xxx%40xxx®ionId=cn-hangzhou#/aokcdqn3ly@4a331e0c0dcbd46/timedTask",
"to": "https://arms.console.aliyun.com/apm?pid=xxx%40xxx®ionId=cn-hangzhou#/aokcdqn3ly@4a331e0c0dcbd46/timedTask/{%22tabs%22:%22iss%22}"
},
"timestamp": 1638184617804,
"page": "/apm"
},
{
"type": "ui.click",
"data": {
"message": "ul%23.next-tabs-nav%20%3E%20li%23.next-tabs-tab%20%3E%20div%23.next-tabs-tab-inner%20%3E%20span%23."
},
"timestamp": 1638184619991,
"page": "/apm"
}
]
}Error fields (t: error)
Logged when a JavaScript error occurs. The SDK captures the error type, message, stack trace, and source location.
Field | Type | Example | Description |
| string |
| Error type (for example, |
| string |
| Error message. Maximum 1,000 characters. |
| string |
| Stack trace. Maximum 1,000 characters. |
| string |
| Source file URL where the error occurred. |
| number |
| Line number of the error. |
| number |
| Column number of the error. |
| string (JSON) |
| URL-encoded error details, containing |
Sample payload:
t: error
times: 1
page: 8880/demo/index.html
environment: prod
begin: 1638185189365
cate: ReferenceError
msg: unknownmethod333 is not defined
stack: ReferenceError: unknownmethod333 is not defined
at http://local.taobao.com:8880/demo/fetch-demo.js:278:9
file: http://local.taobao.com:8880/demo/fetch-demo.js
line: 278
col: 9
pv_id: RgkFyw9zk67l995pnwI5x5******
sampling: 1
requestBody:
{
"err": {
"msg_raw": "unknownmethod333%20is%20not%20defined",
"stack_raw": "ReferenceError%3A%20unknownmethod333%20is%20not%20defined..."
}
}Resource error fields (t: resourceError)
Logged when a page resource (image, script, stylesheet) fails to load.
Field | Type | Example | Description |
| string |
| URL of the failed resource. |
| string |
| HTML element that triggered the load. |
| string |
| DOM path to the element. |
| string |
| Resource type. |
| string |
| Resource file path. |
| string |
| Domain that hosts the resource. |
Sample payload:
t: resourceError
times: 1
page: 8880/demo/index.html
environment: prod
begin: 1638185188224
src: http://example/unknown/picture.jpg
node_name: img
xpath: html. > body. > img.
res_type: img
res_name: /unknown/picture.jpg
domain: example
pv_id: RgkFyw9zk67l995pnwI5x******
sampling: 1Sum, average, and percent fields (t: sum, t: avg, t: percent)
Logged when the SDK reports custom aggregation metrics. Use __bl.sum(), __bl.avg(), or __bl.percent() to report these events.
Field | Type | Example | Description |
| string |
| Event name. Separate group and event with double colons ( |
| number |
| Reported numeric value. |
| string |
| Event group name. |
Report custom metrics with the following SDK methods:
__bl.sum('eventA'); // Sum with default value 1
__bl.sum('eventB', 2); // Sum with value 2
__bl.sum('groupX::eventC'); // Sum with group prefixSample payload:
t: sum
times: 1
page: tracing/callChains/cn-hangzhou
environment: prod
begin: 1638178731104
key: Application list
val: 1
group: ARMS2_NavItemClick
pv_id: Iakvsw01ktagjzcpz773g8******
sampling: 1Custom fields (t: custom)
Logged when the SDK reports custom key-value data. Field names cannot exceed 20 characters and are automatically prefixed with x- on ingestion.
Sample payload:
t: custom
times: 1
page: local.taobao.com:8880/demo/index.html
environment: prod
begin: 1638185189340
x-msg: testcreateInstance222 is ok
pv_id: 99ktyw7akk0lIO565xXCw******
sampling: 1