Diagnose freigeben

Sie können den Prozess smartcollect-server so einrichten, dass bestimmte Diagnosen beim Start aktiviert werden. Dies kann hilfreich sein, wenn Sie bestimmte Leistungsprobleme untersuchen. Es wird nicht empfohlen, diese standardmäßig aktiviert zu haben.

Profiling einschalten

Der smartcollect-server kann mit den Argumenten -profile gestartet werden, um die Profilerstellung zu aktivieren und -profile-port, um den Standard-HTTP-Port (6060) zu überschreiben, an dem z. B. die pprof-Debugging-Endpunkte verfügbar sind:

./smartcollect-server -profile -profile-port=8080

Beachten Sie, dass die pprof-Debugging-Endpunkte an einem anderen Port als der SmartCollect SC²-HTTP-Server bedient werden.

Sie können die Profilerstellungseinstellungen mithilfe von Umgebungsvariablen konfigurieren oder außer Kraft setzen:

export SC2_DIAGNOSTICS_PROFILING_ENABLED=true
export SC2_DIAGNOSTICS_PROFILING_PORT=8080

Weitere Informationen zum Sammeln und Analysieren von Profiling-Daten finden Sie unter Go command pprof.

Use tracing

Der smartcollect-server kann mit den Argumenten -tracing gestartet werden, um Tracing zu aktivieren und -tracing-file, um die Standard-Trace-Datei (trace.out) zu überschreiben, in die das Trace-Ergebnis geschrieben wird. Zum Beispiel:

./smartcollect-server -tracing -tracing-file=/tmp/trace.out

You can configure or override profiling settings using environment variables:

export SC2_DIAGNOSTICS_TRACING_ENABLED=true
export SC2_DIAGNOSTICS_TRACING_FILE=/tmp/trace.out

Betrachten Sie den Trace in einem Webbrowser (Go muss installiert sein):

go tool trace <trace file>
2019/11/24 22:20:42 Parsing trace...
2019/11/24 22:20:42 Splitting trace...
2019/11/24 22:20:42 Opening browser. Trace viewer is listening on http://127.0.0.1:39735

Weitere Informationen zum Analysieren von Trace-Dateien finden Sie unter Go command trace.