Status: Development
This document describes semantic conventions for V8 JS Engine Runtime metrics in OpenTelemetry. This engine is used in some javascript runtime such as Node.js and Deno.
- Metric:
v8js.gc.duration
- Metric:
v8js.memory.heap.limit
- Metric:
v8js.memory.heap.used
- Metric:
v8js.heap.space.available_size
- Metric:
v8js.heap.space.physical_size
Description: In-development V8 JS Engine Runtime metrics captured under v8js
.
This metric is recommended.
This metric SHOULD be specified with
ExplicitBucketBoundaries
of [ 0.01, 0.1, 1, 10 ]
.
Name | Instrument Type | Unit (UCUM) | Description | Stability |
---|---|---|---|---|
v8js.gc.duration |
Histogram | s |
Garbage collection duration. [1] |
[1]: The values can be retrieve from perf_hooks.PerformanceObserver(...).observe({ entryTypes: ['gc'] })
Attribute | Type | Description | Examples | Requirement Level | Stability |
---|---|---|---|---|---|
v8js.gc.type |
string | The type of garbage collection. | major ; minor ; incremental |
Required |
v8js.gc.type
has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
Value | Description | Stability |
---|---|---|
incremental |
Incremental (Incremental Marking). | |
major |
Major (Mark Sweep Compact). | |
minor |
Minor (Scavenge). | |
weakcb |
Weak Callbacks (Process Weak Callbacks). |
This metric is recommended.
Name | Instrument Type | Unit (UCUM) | Description | Stability |
---|---|---|---|---|
v8js.memory.heap.limit |
UpDownCounter | By |
Total heap memory size pre-allocated. [1] |
[1]: The value can be retrieved from value space_size
of v8.getHeapSpaceStatistics()
Attribute | Type | Description | Examples | Requirement Level | Stability |
---|---|---|---|---|---|
v8js.heap.space.name |
string | The name of the space type of heap memory. [1] | new_space ; old_space ; code_space |
Required |
[1] v8js.heap.space.name
: Value can be retrieved from value space_name
of v8.getHeapSpaceStatistics()
v8js.heap.space.name
has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
Value | Description | Stability |
---|---|---|
code_space |
Code memory space. | |
large_object_space |
Large object memory space. | |
map_space |
Map memory space. | |
new_space |
New memory space. | |
old_space |
Old memory space. |
This metric is recommended.
Name | Instrument Type | Unit (UCUM) | Description | Stability |
---|---|---|---|---|
v8js.memory.heap.used |
UpDownCounter | By |
Heap Memory size allocated. [1] |
[1]: The value can be retrieved from value space_used_size
of v8.getHeapSpaceStatistics()
Attribute | Type | Description | Examples | Requirement Level | Stability |
---|---|---|---|---|---|
v8js.heap.space.name |
string | The name of the space type of heap memory. [1] | new_space ; old_space ; code_space |
Required |
[1] v8js.heap.space.name
: Value can be retrieved from value space_name
of v8.getHeapSpaceStatistics()
v8js.heap.space.name
has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
Value | Description | Stability |
---|---|---|
code_space |
Code memory space. | |
large_object_space |
Large object memory space. | |
map_space |
Map memory space. | |
new_space |
New memory space. | |
old_space |
Old memory space. |
This metric is recommended.
Name | Instrument Type | Unit (UCUM) | Description | Stability |
---|---|---|---|---|
v8js.heap.space.available_size |
UpDownCounter | By |
Heap space available size. [1] |
[1]: Value can be retrieved from value space_available_size
of v8.getHeapSpaceStatistics()
Attribute | Type | Description | Examples | Requirement Level | Stability |
---|---|---|---|---|---|
v8js.heap.space.name |
string | The name of the space type of heap memory. [1] | new_space ; old_space ; code_space |
Required |
[1] v8js.heap.space.name
: Value can be retrieved from value space_name
of v8.getHeapSpaceStatistics()
v8js.heap.space.name
has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
Value | Description | Stability |
---|---|---|
code_space |
Code memory space. | |
large_object_space |
Large object memory space. | |
map_space |
Map memory space. | |
new_space |
New memory space. | |
old_space |
Old memory space. |
This metric is recommended.
Name | Instrument Type | Unit (UCUM) | Description | Stability |
---|---|---|---|---|
v8js.heap.space.physical_size |
UpDownCounter | By |
Committed size of a heap space. [1] |
[1]: Value can be retrieved from value physical_space_size
of v8.getHeapSpaceStatistics()
Attribute | Type | Description | Examples | Requirement Level | Stability |
---|---|---|---|---|---|
v8js.heap.space.name |
string | The name of the space type of heap memory. [1] | new_space ; old_space ; code_space |
Required |
[1] v8js.heap.space.name
: Value can be retrieved from value space_name
of v8.getHeapSpaceStatistics()
v8js.heap.space.name
has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
Value | Description | Stability |
---|---|---|
code_space |
Code memory space. | |
large_object_space |
Large object memory space. | |
map_space |
Map memory space. | |
new_space |
New memory space. | |
old_space |
Old memory space. |