OpenJDK CRaC support
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Das Issue nennt keine Quelldateien, Tests oder Einstiegspunkte. Beginne damit nachzuverfolgen, wie der javaagent seine Serververbindung verwaltet, und überprüfe den CRaC-Checkpoint- und Restore-Lebenszyklus; als erledigt gilt die Aufgabe, wenn der Agent verwaltete Ressourcen vor einem Checkpoint schließen und sie nach der Wiederherstellung erneut öffnen kann.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
I'm using Spring Boot app and I was hoping I could utilize the CRaC project. My app uses this javaagent to send profiling data to server.
In order for CRaC to work, so called checkpoint must be captured, and restored. Before checkpoint is captured, all open connections, sockets and files must be closed. Also, when restoring the checkpoint, every such connection,socket and file must be reopened so the app can perform the same way before the checkpoint was taken.
So the problem here is that pyroscope java agent has an open connection to server where it sends data to, and from the java code, we have no way to close/reopen such connection, meaning capturing the checkpoint is impossible.
The solution would be to make pyroaxopw javaagent CRaC compatible, meaning that the agent can automatically respond to checkpoint capturing/restoring by closing /reopening connections,sockets and files it manages.
That way capturing the checkpoint would be possible.
Other javaagents have the same issue with CRaC and are actively working on it:
https://github.com/elastic/apm-agent-java/issues/2982
https://github.com/newrelic/newrelic-java-agent/issues/1697
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/10363
- 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 24 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 263 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
-
StepExamBenchmarkTest runs a loop and prints a timing but asserts nothingEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offenjules
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
open-learning-exchange/myplanet#18199 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 4 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 1 Tag
-
Scheme-less stream URLs throw NullPointerException instead of URISyntaxExceptionEvtl. vergeben @blihio hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
pedroSG94/RootEncoder#2218 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
apache/rocketmq-dashboard#6872 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
ADORSYS-GIS/token-status-link#168 ·
Maintainer antworten meist innerhalb von 2 Tagen