summaryrefslogtreecommitdiff
path: root/doc/administration/sidekiq/sidekiq_health_check.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/administration/sidekiq/sidekiq_health_check.md')
-rw-r--r--doc/administration/sidekiq/sidekiq_health_check.md58
1 files changed, 58 insertions, 0 deletions
diff --git a/doc/administration/sidekiq/sidekiq_health_check.md b/doc/administration/sidekiq/sidekiq_health_check.md
new file mode 100644
index 00000000000..3477320a2ac
--- /dev/null
+++ b/doc/administration/sidekiq/sidekiq_health_check.md
@@ -0,0 +1,58 @@
+---
+stage: Systems
+group: Distribution
+info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
+---
+
+# Sidekiq Health Check **(FREE SELF)**
+
+GitLab provides liveness and readiness probes to indicate service health and
+reachability to the Sidekiq cluster. These endpoints
+[can be provided to schedulers like Kubernetes](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/)
+to hold traffic until the system is ready or restart the container as needed.
+
+The health check server can be set up when [configuring Sidekiq](index.md).
+
+## Readiness
+
+The readiness probe checks whether the Sidekiq workers are ready to process jobs.
+
+```plaintext
+GET /readiness
+```
+
+If the server is bound to `localhost:8092`, the process cluster can be probed for readiness as follows:
+
+```shell
+curl "http://localhost:8092/readiness"
+```
+
+On success, the endpoint returns a `200` HTTP status code, and a response like the following:
+
+```json
+{
+ "status": "ok"
+}
+```
+
+## Liveness
+
+Checks whether the Sidekiq cluster is running.
+
+```plaintext
+GET /liveness
+```
+
+If the server is bound to `localhost:8092`, the process cluster can be probed for liveness as follows:
+
+```shell
+curl "http://localhost:8092/liveness"
+```
+
+On success, the endpoint returns a `200` HTTP status code, and a response like the following:
+
+```json
+{
+ "status": "ok"
+}
+```