Skip to main content

Monitoring

Logging

Refer to the Logging section to configure Gate's logs.

Tracing

Refer to the Tracing section to configure distributed tracing with OpenTelemetry.

Observability events

Gate can ship a structured stream of boot / heartbeat / per-request events to the SlashID backend so the dashboard can show what a Gate is configured to do and how each request was handled.

Refer to the Observability events page for the event envelope, the three event kinds (GateServerStarted_v1, GateHeartbeat_v1, GateRequestHandled_v1), persistent instance identity, URL visibility, plugin decision telemetry, anonymizer credential findings, and OPA-specific knobs.

Health checks

ExtAuth mode

Gate implements the gRPC Health Checking Protocol v1. We also include grpc_health_probe in all our docker images.

Here's an example of a Docker Compose setup:

version: "3"
services:
gate:
image: slashid/gate-free:latest
ports:
- "8080:8080"
healthcheck:
test: ["CMD", "/usr/local/bin/grpc_health_probe", "-addr=:8080"]
interval: 5s
timeout: 10s
retries: 3

Here's an example of a Kubernetes v1.23+ setup using Kubernetes' built-in gRPC health checking capability:

apiVersion: v1
kind: Pod
metadata:
name: gate
spec:
containers:
- name: gate
image: slashid/gate-free:latest
ports:
- containerPort: 8080
livenessProbe:
grpc:
port: 8080
initialDelaySeconds: 5

Finally, an example of a Kubernetes setup using grpc_health_probe:

apiVersion: v1
kind: Pod
metadata:
name: gate
spec:
containers:
- name: gate
image: slashid/gate-free:latest
ports:
- containerPort: 8080
readinessProbe:
exec:
command: ["/usr/local/bin/grpc_health_probe", "-addr=:8080"]
initialDelaySeconds: 5
livenessProbe:
exec:
command: ["/usr/local/bin/grpc_health_probe", "-addr=:8080"]
initialDelaySeconds: 10