USERVER_TASK_PROCESSOR_PROFILER_DEBUG Dynamic Config
Dynamic config for profiling the coroutine based engine of userver. Dictionary key names are the names of engine::TaskProcessor.
Schema:
# yaml
default:
main-task-processor:
enabled: false
# 2ms
execution-slice-threshold-us: 2000
fs-task-processor:
enabled: false
# 1sec
execution-slice-threshold-us: 1000000
description: |
Dynamic config for profiling the coroutine based engine of userver.
Dictionary key names are the names of engine::TaskProcessor.
schema:
type: object
properties: {}
additionalProperties:
$ref: '#/definitions/TaskProcessorSettings'
definitions:
TaskProcessorSettings:
type: object
required:
- enabled
- execution-slice-threshold-us
additionalProperties: false
properties:
enabled:
type: boolean
description: |
whether the profiler is enabled for the given TaskProcessor
execution-slice-threshold-us:
type: integer
description: |
Execution time threshold for a single coroutine on a system thread without yielding.
If the threshold is exceeded, a log entry is written.
If execution time is below the threshold, nothing is logged.
minimum: 1
x-taxi-cpp-type: std::chrono::microseconds
profiler-force-stacktrace:
type: boolean
description: whether to log a stack trace for slow tasks
For a full list of dynamic configs see Dynamic config schemas list