Skip to content

Commit d802522

Browse files
committed
added documentation for breakdown metrics (#539)
closes #539
1 parent 947d0b0 commit d802522

File tree

2 files changed

+141
-9
lines changed

2 files changed

+141
-9
lines changed

docs/configuration.asciidoc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -638,6 +638,16 @@ as well as the "total system memory" metric, you would set `disable_metrics` to:
638638

639639
NOTE: this setting only disables the *sending* of the given metrics, not collection.
640640

641+
[float]
642+
[[config-breakdown_metrics]]
643+
==== `breakdown_metrics`
644+
|============
645+
| Environment | Django/Flask | Default
646+
| `ELASTIC_APM_BREAKDOWN_METRICS` | `BREAKDOWN_METRICS` | `True`
647+
|============
648+
649+
Enable/disable the tracking and collection of breakdown metrics.
650+
By setting this to `False`, tracking this metric is completely disabled, which can reduce the overhead of the agent.
641651

642652
[float]
643653
[[config-django-specific]]

docs/metrics.asciidoc

Lines changed: 131 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,136 @@ These metrics will be sent regularly to the APM Server and from there to Elastic
1414

1515
This metric set collects various system metrics and metrics of the current process.
1616

17-
|============
18-
| Metric | Type | Format | Description
19-
| `system.cpu.total.norm.pct` | scaled_float | percent | The percentage of CPU time in states other than Idle and IOWait, normalised by the number of cores.
20-
| `system.memory.total` | long | bytes | The total memory of the system in bytes
21-
| `system.memory.actual.free` | long | bytes | Actual free memory in bytes
22-
| `system.process.cpu.total.norm.pct` | scaled_float | percent | The percentage of CPU time spent by the process since the last event. This value is normalized by the number of CPU cores and it ranges from 0 to 100%.
23-
| `system.process.memory.size` | long | bytes | The total virtual memory the process has.
24-
| `system.process.memory.rss.bytes` | long | bytes | The Resident Set Size. The amount of memory the process occupied in main memory (RAM).
25-
|============
17+
*`system.cpu.total.norm.pct`*::
18+
+
19+
--
20+
type: scaled_float
21+
22+
format: percent
23+
24+
The percentage of CPU time in states other than Idle and IOWait, normalised by the number of cores.
25+
--
26+
27+
28+
*`system.process.cpu.total.norm.pct`*::
29+
+
30+
--
31+
type: scaled_float
32+
33+
format: percent
34+
35+
The percentage of CPU time spent by the process since the last event.
36+
This value is normalized by the number of CPU cores and it ranges from 0 to 100%.
37+
--
38+
39+
*`system.memory.total`*::
40+
+
41+
--
42+
type: long
43+
44+
format: bytes
45+
46+
Total memory.
47+
--
48+
49+
*`system.memory.actual.free`*::
50+
+
51+
--
52+
type: long
53+
54+
format: bytes
55+
56+
Actual free memory in bytes.
57+
--
58+
59+
60+
*`system.process.memory.size`*::
61+
+
62+
--
63+
type: long
64+
65+
format: bytes
66+
67+
The total virtual memory the process has.
68+
--
69+
70+
71+
72+
*`system.process.memory.rss.bytes`*::
73+
+
74+
--
75+
type: long
76+
77+
format: bytes
78+
79+
he Resident Set Size. The amount of memory the process occupied in main memory (RAM).
80+
--
2681

2782
NOTE: if you do *not* use Linux, you need to install https://pypi.org/project/psutil/[`psutil`] for this metric set.
83+
84+
[[transactions-metricset]]
85+
==== Transactions Metric Set
86+
87+
This metric set collects metrics in relation with transactions.
88+
89+
*`transaction.duration`*::
90+
+
91+
--
92+
type: simple timer
93+
94+
This timer tracks the duration of transactions and allows for the creation of graphs displaying a weighted average.
95+
96+
Fields:
97+
98+
* `sum`: The sum of all transaction durations in ms since the last report (the delta)
99+
* `count`: The count of all transactions since the last report (the delta)
100+
101+
You can filter and group by these dimensions:
102+
103+
* `transaction.name`: The name of the transaction
104+
* `transaction.type`: The type of the transaction, for example `request`
105+
--
106+
107+
[[breakdown-metricset]]
108+
==== Breakdown Metric Set
109+
110+
NOTE: tracking and collection of this metric set can be disabled using the `<<config-breakdown_metrics, breakdown_metrics>>` setting.
111+
112+
*`transaction.breakdown.count`*::
113+
+
114+
--
115+
type: long
116+
117+
format: count (delta)
118+
119+
The number of transactions for which breakdown metrics (`span.self_time`) have been created.
120+
As the Java agent tracks the breakdown for both sampled and non-sampled transactions,
121+
this metric is equivalent to `transaction.duration.count`
122+
123+
You can filter and group by these dimensions:
124+
125+
* `transaction.name`: The name of the transaction
126+
* `transaction.type`: The type of the transaction, for example `request`
127+
128+
--
129+
130+
*`span.self_time`*::
131+
+
132+
--
133+
type: simple timer
134+
135+
This timer tracks the span self-times and is the basis of the transaction breakdown visualization.
136+
137+
Fields:
138+
139+
* `sum`: The sum of all span self-times in ms since the last report (the delta)
140+
* `count`: The count of all span self-times since the last report (the delta)
141+
142+
You can filter and group by these dimensions:
143+
144+
* `transaction.name`: The name of the transaction
145+
* `transaction.type`: The type of the transaction, for example `request`
146+
* `span.type`: The type of the span, for example `app`, `template` or `db`
147+
* `span.subtype`: The sub-type of the span, for example `mysql` (optional)
148+
149+
--

0 commit comments

Comments
 (0)