Enable diagnostics
You can set up the dranscada-server process to enable certain diagnostics when it starts. This can be helpful
when investigating certain performance problems. It’s not recommended to have these enabled by default.
The dranscada-server can be started with the arguments -profile to enable profiling and -profile-port to override
the default HTTP port (6060) where the pprof debugging endpoints are available, for example:
./dranscada-server -profile -profile-port=8080
Note that pprof debugging endpoints are served on a different port than the DranSCADA HTTP server.
You can configure or override profiling settings using environment variables:
export SC2_DIAGNOSTICS_PROFILING_ENABLED=true
export SC2_DIAGNOSTICS_PROFILING_PORT=8080
Refer to Go command pprof for more information about how to collect and analyze profiling data.
The dranscada-server can be started with the arguments -tracing to enable tracing and -tracing-file to override the default trace file (trace.out) where trace result is written to. For example:
./dranscada-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
View the trace in a web browser (Go required to be installed):
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
See Go command trace for more information about how to analyze trace files.