pipeline.shutdown_timeout: per‑pipeline runtime configuration missing
0 reputation · 18 Apr 2026, 21:26 UTC
Goal
Determine whether Logstash can expose a per‑pipeline shutdown timeout that can be adjusted while the instance is running, rather than relying on the global pipeline.shutdown_timeout setting in logstash.yml or the pipeline configuration file.
Constraints & Uncertainty
The current implementation treats pipeline.shutdown_timeout as a global value, applied uniformly to all pipelines. During a pipeline reload via the API, the shutdown logic appears to perform a full graceful shutdown followed by a restart, but the exact timing and whether the timeout is respected for each pipeline is undocumented. There is no documented per‑pipeline cancellation hook, so a slow output may cause the entire pipeline to exceed its timeout and lose events.
Questions
- Is there a supported mechanism to override
pipeline.shutdown_timeoutfor a specific pipeline at runtime? - What is the exact behavior of the shutdown timeout when a pipeline is reloaded through the API—does the timeout apply to the shutdown phase, the restart phase, or both?
- Does the timeout measure from the moment the shutdown signal is received, or does it wait until all worker threads finish processing?