# Prometheus Example This example demonstrates how to use the OpenTelemetry SDK to instrument a simple application using Prometheus as the metric exporter and expose the metrics via HTTP. These are collected by a Prometheus instance which is configured to pull these metrics via HTTP. # How to run ## Prerequisites * Java 1.7 * Docker 19.03 ## 1 - Compile ```shell script ../gradlew fatJar ``` ## 2 - Run Prometheus Start Prometheus instance with a configuration that sets up a HTTP collection job for ```127.0.0.1:19090``` See [prometheus.yml](prometheus.yml) ```shell script docker run --network="host" --rm -it \ --name prometheus \ -v $(pwd)/prometheus.yml:/etc/prometheus/prometheus.yml \ prom/prometheus ``` ## 3 - Start the Application ```shell script java -cp build/libs/opentelemetry-examples-prometheus-all-0.1.0-SNAPSHOT.jar io.opentelemetry.example.prometheus.PrometheusExample 19090 ``` ## 4 - Open the Prometheus UI Navigate to: http://localhost:9090/graph?g0.range_input=15m&g0.expr=incoming_messages&g0.tab=0