diff options
author | Johannes 'fish' Ziemke <github@freigeist.org> | 2016-12-22 17:38:25 +0100 |
---|---|---|
committer | Johannes 'fish' Ziemke <github@freigeist.org> | 2017-01-03 14:03:23 +0100 |
commit | 3db2f442ae3abffed4fec28438b4883854601131 (patch) | |
tree | 80c6ae66b6500a1ed0a3bbecd795b1e8f9fc27e7 /CONTRIBUTING.md | |
parent | 269ee7a7b467e37d88621ac798d28284b1e28ae3 (diff) | |
download | prometheus_node_collector-3db2f442ae3abffed4fec28438b4883854601131.tar.bz2 prometheus_node_collector-3db2f442ae3abffed4fec28438b4883854601131.tar.xz prometheus_node_collector-3db2f442ae3abffed4fec28438b4883854601131.zip |
Limit node-exporter scope, deprecated collectors
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r-- | CONTRIBUTING.md | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5705f0f..139a06c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md | |||
@@ -16,3 +16,26 @@ Prometheus uses GitHub to manage reviews of pull requests. | |||
16 | and the _Formatting and style_ section of Peter Bourgon's [Go: Best | 16 | and the _Formatting and style_ section of Peter Bourgon's [Go: Best |
17 | Practices for Production | 17 | Practices for Production |
18 | Environments](http://peter.bourgon.org/go-in-production/#formatting-and-style). | 18 | Environments](http://peter.bourgon.org/go-in-production/#formatting-and-style). |
19 | |||
20 | |||
21 | ## Collector Implementation Guidelines | ||
22 | |||
23 | The Node Exporter is not a general monitoring agent. Its sole purpose is to | ||
24 | expose machine metrics, as oppose to service metrics, with the only exception | ||
25 | being the textfile collector. | ||
26 | |||
27 | The metrics should not get transformed in a way that is hardware specific and | ||
28 | would require maintaining any form of vendor based mappings or conditions. If | ||
29 | for example a proc file contains the magic number 42 as some identifier, the | ||
30 | Node Exporter should expose it as it is and not keep a mapping in code to make | ||
31 | this human readable. Instead, the textfile collector can be used to add a static | ||
32 | metric which can be joined with the metrics exposed by the exporter to get human | ||
33 | readable identifier. | ||
34 | |||
35 | A Collector may only read `/proc` or `/sys` files, use system calls or local | ||
36 | sockets to retrieve metrics. It may not require root privileges. Running | ||
37 | external commands is not allowed for performance and reliability reasons. Use a | ||
38 | dedicated exporter instead or gather the metrics via the textfile collector. | ||
39 | |||
40 | The Node Exporter tries to support the most common machine metrics. For more | ||
41 | exotic metrics, use the textfile collector or a dedicated Exporter. | ||