PROMETHEUS_SYSCTL_EXPORTER(8)

NAME
prometheus_sysctl_exporter - print kernel state as Prometheus metrics

SYNOPSIS
prometheus_sysctl_exporter [-dgh] [-e pattern] [-i pattern] [prefix ...]

DESCRIPTION
Prometheus is a monitoring system that gathers metrics from its targets by fetching them through HTTP GET requests. Metrics are identified by a name and an optional set of labels. Sample values are required to be numerical.

The prometheus_sysctl_exporter utility prints the values of sysctl nodes to standard output, formatted such that they can be scraped by Prometheus directly. By default, it prints metrics for all numerically representable nodes in the sysctl namespace. It is also possible to limit output to a smaller number of metrics by specifying one or more prefixes as arguments.

Metrics printed by this utility are named ‘sysctl_’, followed by the name of the sysctl node having its ‘’. separators replaced by ‘_’. Components on which it is desirable to aggregate (e.g., names of devices) are omitted from the metric's name, but are appended as labels instead.

There are two different methods for exporting the output of prometheus_sysctl_exporter to Prometheus. The first method is to periodically invoke this utility through cron(8) and store its output in a textfile. The metrics in this textfile can then be served over HTTP using the Prometheus node exporter's textfile collector. The second method is to run this utility through inetd(8). TCP port 9124 has been allocated for this purpose.

The following options are available:

-d  Print descriptions of metrics when available.

-e pattern
    Same as -i, except exclude metrics that match pattern.

-g  Gzip compresses the HTTP response body.

-h  Precede the output with a HTTP response header. This flag is required when running this utility through inetd(8).

-i pattern
    If specified, include metrics that match pattern. The format of pattern is to be a regular expression as described in re_format(7). The provided regular expression is tested against the Prometheus metric name.

SEE ALSO
cron(8), inetd(8), sysctl(8), SYSCTL_ADD_NODE_WITH_LABEL(9)

Prometheus project: https://prometheus.io/.

Prometheus exposition formats: https://prometheus.io/docs/instrumenting/exposition_formats/.

Prometheus node exporter: https://github.com/prometheus/node_exporter.

Prometheus default port allocations: https://github.com/prometheus/prometheus/wiki/Default-port-allocations.

HISTORY
prometheus_sysctl_exporter first appeared in FreeBSD 12.0.

AUTHORS
Nuxi: https://nuxi.nl/.