-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
feat(inputs): Add framework to retry on startup errors #15145
Conversation
fdebe4a
to
52a760a
Compare
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.
Played with this a bit this morning. I like it and it works as advertised. Two items:
- Updated a log message below
- It does seem you can add the
startup_error_behavior
to any plugin now whether it supports the call or not. Is there any way we can warn the user?
Co-authored-by: Joshua Powers <powersj@fastmail.com>
Download PR build artifacts for linux_amd64.tar.gz, darwin_arm64.tar.gz, and windows_amd64.zip. 📦 Click here to get additional PR build artifactsArtifact URLs |
@powersj unfortunately we cannot do anything to warn the user as we would need a way to find out if the plugin could return a retryable error at any point during startup... The alternative would be to mark the plugins somehow but this would have to be done manually. |
Summary
A frequently requested feature is to retry startup for plugins in case of error e.g. if the connection to a remote machine fails.
Instead of implementing the logic for retrying in each plugin, this PR provides a framework for input-plugins to use if they wish to support retries. As an example, the AMQP input plugin is converted to use the new framework
More details can be found in the TSD-006 specification.
Checklist
Related issues
resolves #14803
resolves #13746