prometheus / prometheus/client_java
Exporter Pushgateway runtime issue in versions 1.3.4 and above
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 2.3k
- Forks
- 833
- Ø Merge
- 2 T. 16 Std.
- Gemergte PRs (30 T.)
- 86
Beschreibung
Version 1.3.3 works correctly
I believe it is caused by https://github.com/prometheus/client_java/pull/1190
I am using default format in pushgateway which I think is protobuf.
Dependencies in pom.xml:
<dependency>
<groupId>io.prometheus</groupId>
<artifactId>prometheus-metrics-core</artifactId>
<version>1.3.4</version>
</dependency>
<dependency>
<groupId>io.prometheus</groupId>
<artifactId>prometheus-metrics-exporter-pushgateway</artifactId>
<version>1.3.4</version>
</dependency>
Runtime issue from shaded jar:
Exception in thread (...) java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: class io.prometheus.metrics.expositionformats.PrometheusProtobufWriter is not available
at io.prometheus.metrics.exporter.pushgateway.PushGateway.<init>(PushGateway.java:99)
at io.prometheus.metrics.exporter.pushgateway.PushGateway.<init>(PushGateway.java:77)
at io.prometheus.metrics.exporter.pushgateway.PushGateway$Builder.build(PushGateway.java:456)
(...)
Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.RuntimeException: class io.prometheus.metrics.expositionformats.PrometheusProtobufWriter is not available
So I guess it complains about
https://github.com/prometheus/client_java/blob/main/prometheus-metrics-exporter-pushgateway/src/main/java/io/prometheus/metrics/exporter/pushgateway/PushGateway.java#L9
or
https://github.com/prometheus/client_java/blob/main/prometheus-metrics-exporter-pushgateway/src/main/java/io/prometheus/metrics/exporter/pushgateway/PushGateway.java#L114
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Vergleiche das Abhängigkeitsverhalten von 1.3.3 und 1.3.4 in pom.xml und untersuche anschließend PushGateway.java in der Umgebung der referenzierten Zeilen sowie die Verpackung des shaded-jar. Verfolge, warum PrometheusProtobufWriter zur Laufzeit nicht verfügbar ist, und bestätige, dass das standardmäßige Pushgateway-Format in einem shaded jar erfolgreich initialisiert wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- observability-sre
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 48/100