-
Notifications
You must be signed in to change notification settings - Fork 3.5k
Deprecate config.reload.* as pipeline-level settings #18312
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
🤖 GitHub commentsExpand to view the GitHub comments
Just comment with:
|
This pull request does not have a backport label. Could you fix it @estolfo? 🙏
|
Some questions/comments about these changes:
|
93c4195
to
b10d80b
Compare
This reverts commit ffd67a3.
💚 Build Succeeded
History
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall looks good. Docs and API spec are updated. When Logstash is started with auto reload "-r", the deprecation log by default is printed every 10 seconds. I think it is acceptable.
I have two minor suggestions.
hash.each do |key, _| | ||
unless PIPELINE_SETTINGS_WHITE_LIST.include?(key) | ||
if DEPRECATED_PIPELINE_OVERRIDE_SETTINGS.include?(key) | ||
deprecation_logger.deprecated("Config option (#{key}) is deprecated as a pipeline override setting, please only set it at the process level.") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have two suggestions
- quote the key with "`" rather than "("
- Can we add the pipeline name to the log? Sometimes users have hundreds of pipelines, so it will be great to point them to the right place.
What does this PR do?
These changes handle the case when
config.reload.*
settings are set as pipeline override settings inpipeline.yml
.They aren't actually applied at the pipeline level so they are considered deprecated as pipeline override settings; they can only be set at the process level.
More specifically, the changes include:
config.reload.*
settings per pipeline, when set inpipeline.yml
config.reload.*
from pipeline metricsconfig.reload.*
from/_node/pipeline(s)
endpoint responsesconfig.reload.*
from documentation of/_node/pipeline(s)
(see preview below in comments)Why is it important/What is the impact to the user?
See the related issue for more context. In summary,
config.reload.*
can be set at the pipeline level but the settings are only actually applied at the process level.Checklist
Author's Checklist
How to test this PR locally
Related issues
config.reload.*
should NOT allow per-pipeline overrides. #18262Use cases
Screenshots
Logs