svn commit: r49807 - head/en_US.ISO8859-1/htdocs/news/status
Benjamin Kaduk
bjk at FreeBSD.org
Mon Jan 9 00:14:14 UTC 2017
Author: bjk
Date: Mon Jan 9 00:14:12 2017
New Revision: 49807
URL: https://svnweb.freebsd.org/changeset/doc/49807
Log:
Add Prometheus entry from ed
Modified:
head/en_US.ISO8859-1/htdocs/news/status/report-2016-10-2016-12.xml
Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2016-10-2016-12.xml
==============================================================================
--- head/en_US.ISO8859-1/htdocs/news/status/report-2016-10-2016-12.xml Sun Jan 8 23:49:54 2017 (r49806)
+++ head/en_US.ISO8859-1/htdocs/news/status/report-2016-10-2016-12.xml Mon Jan 9 00:14:12 2017 (r49807)
@@ -151,4 +151,81 @@
(NFS-as-a-service).</task>
</help>
</project>
+
+ <project cat='proj'>
+ <title>Sysctl Exporter for Prometheus</title>
+
+ <contact>
+ <person>
+ <name>
+ <given>Ed</given>
+ <common>Schouten</common>
+ </name>
+ <email>ed at FreeBSD.org</email>
+ </person>
+ </contact>
+
+ <links>
+ <url href="https://prometheus.io/">The Prometheus Project</url>
+ <url href="https://github.com/prometheus/node_exporter">Node Exporter</url>
+ <url href="https://svnweb.FreeBSD.org/base/head/usr.sbin/prometheus_sysctl_exporter/">Sysctl Exporter</url>
+ </links>
+
+ <body>
+ <p>Prometheus is an Open Source monitoring system that was
+ originally built at SoundCloud in 2012. Since 2016, this project is
+ part of the Cloud Native Computing Foundation, together with other
+ projects like Kubernetes.</p>
+
+ <p>Prometheus scrapes its targets by periodically sending HTTP GET
+ requests. Targets then respond by sending key-value pairs of metrics
+ and their sample value. Prometheus has a query language, PromQL,
+ that can be used to aggregate sample values and specify alerting
+ conditions. Tools like Grafana can be used to create fancy
+ dashboards using such queries.</p>
+
+ <p>The Prometheus project provides a utility called the
+ node_exporter that gathers basic system metrics and serves them
+ over HTTP. This utility tends to be rather complex, as it has
+ to extract metrics from many different sources. On Linux, files
+ in <tt>/proc</tt> have no uniform format, meaning that for every
+ kernel framework a custom collector needs to be written.</p>
+
+ <p>On &os; the sitiuation is better, as the data exported
+ through <tt>sysctl</tt> is already structured in such a way that
+ it can easily be translated to Prometheus' metrics format. The
+ goal of this project is thus to provide a generic exporter for
+ the entire sysctl tree. Not only does this prevent unnecessary
+ bloat and indirection, it may also make the life of a kernel
+ developer a lot easier. One can easily use Prometheus to graph
+ the occurrence of an event over time by (temporarily) adding a
+ counter to the kernel.</p>
+
+ <p>An initial version of the sysctl exporter has been integrated
+ into the &os; base system in December. It can be run through
+ <tt>inetd</tt> by uncommenting the example provided in
+ <tt>inetd.conf</tt>. Unfortunately, this exporter cannot be
+ merged back to &os; 10.x/11.x, as it depends on KBI-breaking
+ changes to <tt>sysctl(9)</tt>.</p>
+ </body>
+
+ <help>
+ <task>Are you using Prometheus or are you interested in using
+ it? Be sure to give both Prometheus and this <tt>sysctl</tt>
+ exporter a try!</task>
+
+ <task>It would be nice if we created a set of useful alerting
+ rules and placed those in /usr/share/examples. For example, how
+ can one use this exporter to monitor the state of GEOM-based
+ RAID arrays? Is such information even exported through
+ <tt>sysctl</tt>?</task>
+
+ <task>Prometheus uses a pretty nifty format for exporting
+ histograms. Histograms are useful for expressing the amount of
+ time taken to complete certain events (for example, disk
+ operations). Would it be possible to add histograms as native
+ datatypes to sysctl? If so, is there any chance they can be
+ implemented without picking up any kernel locks?</task>
+ </help>
+ </project>
</report>
More information about the svn-doc-head
mailing list