Graphite Metrics
This document lists and describes the Graphite metrics available in the a9s Framework.
Graphite Metrics are one of the most common metrics formats in application monitoring.
The metrics are sent in the following simple format: metric_path
+ value
+ timestamp
.
a9s Metric specification
The metric specification shows how the metric_path
is built in the anynines context.
my-pgtest.org.space.bb7b60fb-8ebe-441f-9aa4-664162947b16.postgres.d655fe7-pg-0.node.dc1.consul.database.postgres.table.3456.pg_catalog.pg_collation.idx_tup_fetch 0 1532428430
|-------| |-| |---| |----------------------------------| |------| |--------------------------| |----------------------------------------------------------------| | |--------|
(1) (2) (3) (4) (5) (6) (7) (8) (9)
Index | Name | Use | Configuration |
---|---|---|---|
1 | metrics prefix | User defined metric prefix; often used for API keys | metrics_prefix (optional) |
2 | metrics prefix level 2 | User defined metric prefix (often used for CF orgs) | metrics_prefix_level_2 (optional) |
3 | metrics prefix level 3 | User defined metric prefix (often used for CF spaces) | metrics_prefix_level_3 (optional) |
4 | guid | An identifier for the system generating the logs | Automatic |
5 | service name | Identifies the data service | Automatic |
6 | hostname/deployment name | Consul hostname of the node or if backup monit plugin, deployment name | Automatic |
7 | metric id | Describes the metric (service specific) | Automatic |
8 | metric value | Value of the metric | N/A |
9 | timestamp | Time when the log message was created | N/A |
System Metrics
These are all of the metrics provided by all a9s Unix-based component.
Metric Id | Type | Description |
---|---|---|
disk_size | Integer (Bytes) | The total space on the partition |
disk_used | Integer (Bytes) | The total amount of used space on the storage partition |
mem_free | Integer (kB) | Unused memory (MemFree and SwapFree in /proc/meminfo ) |
mem_buffers | Integer (kB) | Memory used by kernel buffers (Buffers in /proc/meminfo ) |
mem_shared | Integer (kB) | Memory used (mostly) by tmpfs (Shmem in /proc/meminfo ) |
mem_total | Integer (kB) | Total installed memory (MemTotal and SwapTotal in /proc/meminfo ) |
mem_buffers | Integer (kB) | Memory used by kernel buffers (Buffers in /proc/meminfo ) |
mem_cached | Integer (kB) | Memory used by the page cache and slabs (Cached and SReclaimable in /proc/meminfo ) |
mem_used | Integer (kB) | Used memory (calculated as MemTotal - MemFree - Buffers - Cached - SReclaimable) |
swap_total | Integer (kB) | Swap Memory total (Swap_total in /proc/meminfo ) |
swap_used | Integer (kB) | Swap Memory total - Swap Memory free (Swap_total and Swap_free in /proc/meminfo ) |
cpu<*>.user | Integer | Normal processes executing in user mode (First column at the CPU* line at /proc/stat ) |
cpu<*>.priority | Integer | Niced processes(niceness) executing in user mode (Second column at the CPU* line at /proc/stat ) |
cpu<*>.system | Integer | Processes executing in kernel mode (Third column at the CPU* line at /proc/stat ) |
cpu<*>.idle | Integer | Idle processes (Fourth column at the CPU* line at /proc/stat ) |
load_fifteen_min | Float | Amount of CPU and IO utilization of the last 15 minutes (Third column at /proc/loadavg ) |
load_five_min | Float | Amount of CPU and IO utilization of the last 5 minutes (First column at /proc/loadavg ) |
load_one_min | Float | Amount of CPU and IO utilization of the last 1 minute (Second column at /proc/loadavg ) |
*.system.*.*.*.*.mem_free
*.system.*.*.*.*.cpu0.priority
*.system.*.*.*.*.cpu0.system
*.system.*.*.*.*.disk_size
*.system.*.*.*.*.disk_used
*.system.*.*.*.*.swap_free
*.system.*.*.*.*.cpu0.user
*.system.*.*.*.*.cpu0.idle
*.system.*.*.*.*.load_fifteen_min
*.system.*.*.*.*.load_one_min
*.system.*.*.*.*.mem_buffers
*.system.*.*.*.*.mem_cached
*.system.*.*.*.*.load_five_min
*.system.*.*.*.*.swap_used
*.system.*.*.*.*.mem_total
*.system.*.*.*.*.mem_shared
*.system.*.*.*.*.mem_used
*.system.*.*.*.*.swap_total
a9s Parachute Metrics
These are all of the metrics provided related to a9s Parachute.
General
Name | Description |
---|---|
error | 0 if the a9s Parachute metrics could be fetched, 1 otherwise |
activated | 1 if the a9s Parachute is activated because at least one disk has reached the configured threshold, 0 otherwise |
metric_fetch_status | 0 if the last metric update is successful, 1 otherwise |
*.parachute.*.*.*.*.error
*.parachute.*.*.*.*.activated
*.parachute.*.*.*.*.metric_fetch_status
Disks
Only the observed devices of the a9s Parachute are monitored:
Mount Point | Name |
---|---|
/var/vcap/data | ephemeral |
/var/vcap/store | persistent |
Name | Description |
---|---|
disk.\<name>.error | 0 if the disk stats could be fetched, 1 otherwise |
disk.\<name>.total | the maximum available amount of disk space in bytes |
disk.\<name>.used | the amount of disk space in bytes currently being used |
disk.\<name>.used_percent | the amount of disk space in percent currently being used |
disk.\<name>.used_threshold | the threshold value in percent of disk space at which the a9s Parachute is activated |
disk.\<name>.free | the amount of disk space in bytes not currently in use |
disk.\<name>.activated | 1 if the a9s Parachute is activated because this disk has reached the configured threshold, 0 otherwise |
*.parachute.*.*.*.*.disk.ephemeral.error
*.parachute.*.*.*.*.disk.ephemeral.total
*.parachute.*.*.*.*.disk.ephemeral.used
*.parachute.*.*.*.*.disk.ephemeral.used_percent
*.parachute.*.*.*.*.disk.ephemeral.used_threshold
*.parachute.*.*.*.*.disk.ephemeral.free
*.parachute.*.*.*.*.disk.ephemeral.activated
*.parachute.*.*.*.*.disk.persistent.error
*.parachute.*.*.*.*.disk.persistent.total
*.parachute.*.*.*.*.disk.persistent.used
*.parachute.*.*.*.*.disk.persistent.used_percent
*.parachute.*.*.*.*.disk.persistent.used_threshold
*.parachute.*.*.*.*.disk.persistent.free
*.parachute.*.*.*.*.disk.persistent.activated
Other Metrics
*Redis is a registered trademark of Redis Ltd. Any rights therein are reserved to Redis Ltd. Any use by anynines GmbH is for referential purposes only and does not indicate any sponsorship, endorsement or affiliation between Redis and anynines GmbH.