-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
Add timeouts and setup enforcement for custom plugins statuses #77965
Add timeouts and setup enforcement for custom plugins statuses #77965
Conversation
e860142
to
7b728e7
Compare
@@ -231,6 +253,75 @@ describe('PluginStatusService', () => { | |||
{ a: { level: ServiceStatusLevels.available, summary: 'a available' } }, | |||
]); | |||
}); | |||
|
|||
it('updates when a plugin status observable emits', async () => { |
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.
This test case was actually missing, even though it's the most likely behavior from a plugin.
8747772
to
ebda07b
Compare
Pinging @elastic/kibana-core (Team:Core) |
Setting back to draft until #102108 is done since it affects this PR |
ebda07b
to
c3d8571
Compare
1657110
to
e5239ff
Compare
e5239ff
to
1e9a557
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.
New plugin dir changes look good
69e12c7
to
4098de2
Compare
@elasticmachine retest |
jenkins, test this |
💚 Backport successful
This backport PR will be merged automatically after passing CI. |
… (#103149) Co-authored-by: Josh Dover <[email protected]>
💔 Build Failed
Failed CI StepsTest FailuresKibana Pipeline / general / X-Pack API Integration Tests.x-pack/test/api_integration/apis/management/index_lifecycle_management/policies·js.apis management index lifecycle management policies list should have a default policy to manage the Watcher history indicesStandard Out
Stack Trace
Kibana Pipeline / general / X-Pack API Integration Tests.x-pack/test/api_integration/apis/management/index_lifecycle_management/policies·js.apis management index lifecycle management policies list should have a default policy to manage the Watcher history indicesStandard Out
Stack Trace
Metrics [docs]
History
To update your PR or re-run it, just comment with: |
Summary
Closes #101049
Introduces two changes to make Core's StatusService more resilient to issues caused by custom plugin status checks:
core.status.set
cannot be called aftersetup
to help encourage plugins to register an observable early, ideally with an initial statusunavailable
if a status check is not emitted by a plugin within 30s.This should help avoid problems like those found with the alerting and task_manager plugins in #101778
Plugin API Changes
Custom status checks registered by plugins on the
core.status.set
API must now emit a value within 30s or they will timeout to anunavailable
status.Checklist
Delete any items that are not applicable to this PR.
For maintainers