Commit 3eb54103 authored by Brian Brazil's avatar Brian Brazil

Merge pull request #336 from brian-brazil/simplejava

Update docs for new java client, and other changes.
parents d6284634 ba0143d2
......@@ -22,8 +22,7 @@ currently running goroutines. Use gauges for this use case.
Client library usage documentation for counters:
* [Go](http://godoc.org/github.com/prometheus/client_golang/prometheus#Counter)
* [Java](https://github.com/prometheus/client_java/blob/master/client/src/main/java/io/prometheus/client/metrics/Counter.java)
* [Java (simple client)](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Counter.java)
* [Java](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Counter.java)
* [Ruby](https://github.com/prometheus/client_ruby#counter)
* [Python](https://github.com/prometheus/client_python#counter)
......@@ -39,8 +38,7 @@ running goroutines.
Client library usage documentation for gauges:
* [Go](http://godoc.org/github.com/prometheus/client_golang/prometheus#Gauge)
* [Java](https://github.com/prometheus/client_java/blob/master/client/src/main/java/io/prometheus/client/metrics/Gauge.java)
* [Java (simple client)](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Gauge.java)
* [Java](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Gauge.java)
* [Ruby](https://github.com/prometheus/client_ruby#gauge)
* [Python](https://github.com/prometheus/client_python#gauge)
......@@ -68,7 +66,7 @@ and differences to [summaries](#summary).
Client library usage documentation for histograms:
* [Go](http://godoc.org/github.com/prometheus/client_golang/prometheus#Histogram)
* [Java](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Histogram.java) (histograms are only supported by the simple client but not by the legacy client)
* [Java](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Histogram.java)
* [Python](https://github.com/prometheus/client_python#histogram)
## Summary
......@@ -92,7 +90,6 @@ to [histograms](#histogram).
Client library usage documentation for summaries:
* [Go](http://godoc.org/github.com/prometheus/client_golang/prometheus#Summary)
* [Java](https://github.com/prometheus/client_java/blob/master/client/src/main/java/io/prometheus/client/metrics/Summary.java)
* [Java (simple client)](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Summary.java)
* [Java](https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/Summary.java)
* [Ruby](https://github.com/prometheus/client_ruby#summary)
* [Python](https://github.com/prometheus/client_python#summary)
......@@ -35,7 +35,8 @@ on the Robust Perception blog to get started.
### What language is Prometheus written in?
Most Prometheus components are written in Go. Some are also written in Java and Ruby.
Most Prometheus components are written in Go. Some are also written in Java,
Python, and Ruby.
### How stable are Prometheus features, storage formats, and APIs?
......@@ -146,8 +147,14 @@ the [exposition formats](/docs/instrumenting/exposition_formats/).
### Can I monitor machines?
Yes, the [Node Exporter](https://github.com/prometheus/node_exporter) exposes
an extensive set of machine-level metrics on Linux such as CPU usage, memory,
disk utilization, filesystem fullness and network bandwidth.
an extensive set of machine-level metrics on Linux and other Unix systems such
as CPU usage, memory, disk utilization, filesystem fullness and network
bandwidth.
### Can I monitor network devices?
Yes, the [SNMP Exporter](https://github.com/prometheus/snmp_exporter) allows
monitoring of devices that support SNMP.
### Can I monitor batch jobs?
......@@ -159,12 +166,6 @@ jobs.
See [exporters for third-party systems](/docs/instrumenting/exporters/).
### Which Java client should I use?
New users are advised to use the
[simpleclient](https://github.com/prometheus/client_java/tree/master/simpleclient).
For more information, see the [comparison](https://github.com/prometheus/client_java/wiki).
### Can I monitor JVM applications via JMX?
Yes, for applications that you cannot instrument directly with the Java client
......
......@@ -221,10 +221,9 @@ Two rules of thumb:
## What can I do if my client library does not support the metric type I need?
Implement it! [Code contributions are welcome](/community/). In
general, we expect histograms to be more urgently needed than
summaries. Histograms are also easier to implement in a client
library, so we recommend to implement histograms first, if in
doubt. The reason why some libraries offer summaries but not
histograms (the Ruby client and the legacy Java client) is that
histograms are a more recent feature of Prometheus.
Implement it! [Code contributions are welcome](/community/). In general, we
expect histograms to be more urgently needed than summaries. Histograms are
also easier to implement in a client library, so we recommend to implement
histograms first, if in doubt. The reason why some libraries offer summaries
but not histograms (such as the Ruby client) is that histograms are a more
recent feature of Prometheus.
......@@ -230,7 +230,7 @@ For code which is performance-critical or called more than 100k times a second
inside a given process, you may wish to take some care as to how many metrics
you update.
A Java Simpleclient counter takes
A Java counter takes
[12-17ns](https://github.com/prometheus/client_java/blob/master/benchmark/README.md)
to increment depending on contention. Other languages will have similar
performance. If that amount of time is significant for your inner loop, limit
......@@ -250,5 +250,5 @@ to correctly handle them. To avoid this, export `0` (or `NaN`, if `0`
would be misleading) for any time series you know may exist in
advance.
Most Prometheus client libraries (including Go and Java Simpleclient) will
Most Prometheus client libraries (including Go, Java, and Python) will
automatically export a `0` for you for metrics with no labels.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment