Be able to set an agent log format with a configuration option
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 42/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- java
- Bereich
- observability
Rechercherichtung
Beginne mit agent/src/main/java/io/pyroscope/javaagent/PyroscopeAgent.java und agent/src/main/java/io/pyroscope/javaagent/api/Logger.java, den im Issue verlinkten Einstiegspunkten. Verfolge, wie der Agent-Logger initialisiert wird, und überprüfe die vorhandene Konfiguration PYROSCOPE_LOG_LEVEL. Als abgeschlossen gilt die Arbeit, wenn der Agent die angeforderte Option für das Log-Format bereitstellt und das ausgewählte Format für seine Ausgabe verwendet, einschließlich einer Abdeckung der unterstützten Formate.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Our scenario
Hello. We are using docker as the underlying technology to deploy apps and the observability stack. For all the logs we decide to use JSON format that is sent to our Loki backend.
We are trying to adopt the pyroscope Java Otel extension (that implicitly has the Java Agent) to send profiling data to our Pyroscope server.
The issue
During our testing, when we are sending the Pyroscope backend server down, all Java apps using the extension are producing lot of logs that don't align with the rest of echosystem. In our case is JSON.
This is the kind of output we are getting from the agent logger in the docker console:
2024-03-21 11:37:15.292 [ERROR] Error uploading snapshot: 502 <html>
<head><title>502 Bad Gateway</title></head>
<body>
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx</center>
</body>
</html>
Currently the agent only has this log parameter PYROSCOPE_LOG_LEVEL which is not enough for this case.
Possible solutions
- As discussed in this thread a custom logger interface implementation can be done:
https://github.com/grafana/pyroscope-java/blob/f73ebfaae1fcdfdf61d3418a78807c5b2b0[…]/agent/src/main/java/io/pyroscope/javaagent/PyroscopeAgent.java
https://github.com/grafana/pyroscope-java/blob/82b1daba0dc05b1851e6b96f2d760ab7901[…]0c49/agent/src/main/java/io/pyroscope/javaagent/api/Logger.java
However, that would require initializing the profiler outside the otel extension, and this is not available when it's running as a javagent.
- Add a flag
PYROSCOPE_LOG_FORMATto set the logger format. it could be JSON or LOGFTM to align with rest of Grafana stack.
- Vorherrschende Sprache
- Java
- Sterne
- 125
- Forks
- 48
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus grafana/pyroscope-java
-
Clean up dead publishing repository config and credentials in subproject build filesEvtl. vergeben @arnabnandy7 hat das vor 23 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
grafana/pyroscope-java#294 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 54/100
grafana/pyroscope-java#371 · 2 Reaktionen ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
grafana/pyroscope-java#368 · 1 Kommentar ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
grafana/pyroscope-java#283 ·
-
libasyncProfiler-linux-x64.so dump in /tmpEvtl. wieder frei @korniltsev-grafanista hat das vor 261 Tagen übernommen, und es ist kein Pull Request offen. Offen
grafana/pyroscope-java#250 · 1 Kommentar · 1 zugewiesene Person ·
Alle Issues in grafana/pyroscope-java
Ähnliche Issues
-
RRateLimiter acquire methods accept negative permits and raise available permits above the rate.Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 4 Tagen
-
README 中的代码语言数量与当前目录不一致Offen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 75/100
krahets/hello-algo#1993 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
NationalSecurityAgency/ghidra#9884 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Status: Pending Review Type: Feature Request
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
OpenRefine/OpenRefine#8019 ·
Maintainer antworten meist innerhalb von 1 Tag
-
`timer` rule rejects dates the engine acceptsEvtl. vergeben @MFA-G hat das heute übernommen. Offenbug ready
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
camunda/bpmnlint-plugin-camunda-compat#281 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag