The performance sampling feature can detect the time consumption at various points in the Dubbo processing chain. When a timeout occurs ( usageTime / timeout > profilerWarnPercent * 100 ), the call duration is logged.
This feature is divided into two modes: simple profiler and detail profiler. The simple profiler mode is enabled by default, while the detail profiler mode is disabled by default. The detail profiler collects additional information such as processing time for each filter and specific time consumption on protocols, compared to the simple profiler. If long processing times are found within the Dubbo framework while in simple profiler, the detail profiler can be enabled for better issue diagnosis.
Enable simple profiler mode, enabled by default
dubbo>enableSimpleProfiler
OK
dubbo>
Disable simple profiler mode, which will also disable detail profiler
dubbo>disableSimpleProfiler
OK
dubbo>
Enable detail profiler mode, disabled by default. It will only be truly enabled when simple profiler is on
dubbo>enableDetailProfiler
OK. This will cause performance degradation, please be careful!
dubbo>
Disable detail profiler mode, which does not affect simple profiler
dubbo>disableDetailProfiler
OK
dubbo>
Set the warning percentage for timeout
Command: setProfilerWarnPercent {profilerWarnPercent}
profilerWarnPercent: The warning percentage for timeout, range 0.0 ~ 1.0, default is 0.75
dubbo>setProfilerWarnPercent 0.75
OK
dubbo>