aboutsummaryrefslogtreecommitdiff
path: root/exporters/stats/prometheus/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'exporters/stats/prometheus/README.md')
-rw-r--r--exporters/stats/prometheus/README.md81
1 files changed, 81 insertions, 0 deletions
diff --git a/exporters/stats/prometheus/README.md b/exporters/stats/prometheus/README.md
new file mode 100644
index 00000000..fa19efc9
--- /dev/null
+++ b/exporters/stats/prometheus/README.md
@@ -0,0 +1,81 @@
+# OpenCensus Prometheus Stats Exporter
+
+The *OpenCensus Prometheus Stats Exporter* is a stats exporter that exports data to
+Prometheus. [Prometheus](https://prometheus.io/) is an open-source systems monitoring and alerting
+toolkit originally built at [SoundCloud](https://soundcloud.com/).
+
+## Quickstart
+
+### Prerequisites
+
+To use this exporter, you need to install, configure and start Prometheus first. Follow the
+instructions [here](https://prometheus.io/docs/introduction/first_steps/).
+
+### Hello "Prometheus Stats"
+
+#### Add the dependencies to your project
+
+For Maven add to your `pom.xml`:
+```xml
+<dependencies>
+ <dependency>
+ <groupId>io.opencensus</groupId>
+ <artifactId>opencensus-api</artifactId>
+ <version>0.16.1</version>
+ </dependency>
+ <dependency>
+ <groupId>io.opencensus</groupId>
+ <artifactId>opencensus-exporter-stats-prometheus</artifactId>
+ <version>0.16.1</version>
+ </dependency>
+ <dependency>
+ <groupId>io.opencensus</groupId>
+ <artifactId>opencensus-impl</artifactId>
+ <version>0.16.1</version>
+ <scope>runtime</scope>
+ </dependency>
+</dependencies>
+```
+
+For Gradle add to your dependencies:
+```groovy
+compile 'io.opencensus:opencensus-api:0.16.1'
+compile 'io.opencensus:opencensus-exporter-stats-prometheus:0.16.1'
+runtime 'io.opencensus:opencensus-impl:0.16.1'
+```
+
+#### Register the exporter
+
+```java
+public class MyMainClass {
+ public static void main(String[] args) {
+ // Creates a PrometheusStatsCollector and registers it to the default Prometheus registry.
+ PrometheusStatsCollector.createAndRegister();
+
+ // Uses a simple Prometheus HTTPServer to export metrics.
+ // You can use a Prometheus PushGateway instead, though that's discouraged by Prometheus:
+ // https://prometheus.io/docs/practices/pushing/#should-i-be-using-the-pushgateway.
+ io.prometheus.client.exporter.HTTPServer server =
+ new HTTPServer(/*host*/ "localhost", /*port*/ 9091, /*daemon*/ true);
+
+ // Your code here.
+ // ...
+ }
+}
+```
+
+In this example, you should be able to see all the OpenCensus Prometheus metrics by visiting
+localhost:9091/metrics. Every time when you visit localhost:9091/metrics, the metrics will be
+collected from OpenCensus library and refreshed.
+
+#### Exporting
+
+After collecting stats from OpenCensus, there are multiple options for exporting them.
+See [Exporting via HTTP](https://github.com/prometheus/client_java#http), [Exporting to a Pushgateway](https://github.com/prometheus/client_java#exporting-to-a-pushgateway)
+and [Bridges](https://github.com/prometheus/client_java#bridges).
+
+#### Java Versions
+
+Java 7 or above is required for using this exporter.
+
+## FAQ