-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Healthz overhaul #7518
base: master
Are you sure you want to change the base?
Healthz overhaul #7518
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #7518 +/- ##
==========================================
+ Coverage 61.39% 61.81% +0.42%
==========================================
Files 265 247 -18
Lines 22609 22477 -132
==========================================
+ Hits 13880 13894 +14
+ Misses 7579 7417 -162
- Partials 1150 1166 +16 ☔ View full report in Codecov by Sentry. |
6ecfa37
to
6b5457b
Compare
d356488
to
8f2ef5f
Compare
@JoshVanL please resolve conflicts |
263d8b8
to
ca9dc6d
Compare
@yaron2 fixed |
ca58813
to
92b8f10
Compare
/ok-to-test |
1 similar comment
/ok-to-test |
Dapr E2E testCommit ref: bf7d98b ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
❌ Tests failed on windows/amd64Please check the logs for details on the error. ❌ Tests failed on linux/amd64Please check the logs for details on the error. |
Dapr E2E testCommit ref: bf7d98b ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
✅ Tests succeeded on windows/amd64
✅ Tests succeeded on linux/amd64
|
/ok-to-test |
2 similar comments
/ok-to-test |
/ok-to-test |
Dapr E2E testCommit ref: bf7d98b ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
❌ Tests failed on windows/amd64Please check the logs for details on the error. ✅ Tests succeeded on linux/amd64
|
Dapr E2E testCommit ref: bf7d98b ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
✅ Tests succeeded on windows/amd64
✅ Tests succeeded on linux/amd64
|
Dapr E2E testCommit ref: bf7d98b ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
❌ Tests failed on windows/amd64Please check the logs for details on the error. ✅ Tests succeeded on linux/amd64
|
87dfaef
to
d2e5aa7
Compare
d491f2a
to
85ea707
Compare
Currently, the healthz endpoint on Dapr services do not represent the actual health of the service as they are mostly only spinning up a HTTP server and immediately returning a 200 OK. This results in services receiving traffic before they are ready to actually serve requests. This issue manifests in integration tests where, for example, no metrics are available on the metrics endpoint even though the service reports as healthy and therefore fails the test. This PR overhauls the healthz package to allow registering health targets during the service `New` process chain. Each module marks their target as healthy and the healthz server reports the overall health of the service. Although not perfect, service healthz endpoints should now be more representative of the actual health of the program. Signed-off-by: joshvanl <me@joshvanl.dev>
Signed-off-by: joshvanl <me@joshvanl.dev>
Signed-off-by: joshvanl <me@joshvanl.dev>
Signed-off-by: joshvanl <me@joshvanl.dev>
Signed-off-by: joshvanl <me@joshvanl.dev>
Signed-off-by: joshvanl <me@joshvanl.dev>
Signed-off-by: joshvanl <me@joshvanl.dev>
Signed-off-by: joshvanl <me@joshvanl.dev>
bb8218a
to
14bad27
Compare
Currently, the healthz endpoint on Dapr services do not represent the actual health of the service as they are mostly only spinning up a HTTP server and immediately returning a 200 OK. This results in services receiving traffic before they are ready to actually serve requests. This issue manifests in integration tests where, for example, no metrics are available on the metrics endpoint even though the service reports as healthy and therefore fails the test.
This PR overhauls the healthz package to allow registering health targets during the service
New
process chain. Each module marks their target as healthy and the healthz server reports the overall health of the service. Although not perfect, service healthz endpoints should now be more representative of the actual health of the program.