Skip to content

Commit a99f9e3

Browse files
committed
Document observability
1 parent 0c413bf commit a99f9e3

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

doc/installing.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,24 @@ helm upgrade -i bifrost-gateway-controller-helm oci://ghcr.io/tv2-oss/bifrost-ga
4040
In addition to the *bifrost-gateway-controller*, you will need
4141
blueprints defining datapath implementations. See [Example
4242
GatewayClassBlueprints](../blueprints/README.md).
43+
44+
## Metrics and Observability
45+
46+
The controller provides [standard controller
47+
metrics](https://book.kubebuilder.io/reference/metrics-reference.html)
48+
and the Helm chart provides a
49+
[ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#monitoring.coreos.com/v1.ServiceMonitor)
50+
for integration with systems that understand these.
51+
52+
Observability of Gateway-API resources is possbile through [Custom
53+
Resource State
54+
Metrics](https://github.com/kubernetes/kube-state-metrics/blob/main/docs/customresourcestate-metrics.md)
55+
through kube-state-metrics. An example configuration for deploying
56+
kube-state-metrics is [provided
57+
here](test-data/kube-state-metrics-values.yaml). Generally, this
58+
configuration provides condition status for `GatewayClass`, `Gateway`
59+
and `HTTPRoute` resources.
60+
61+
An SLI for e.g. `Gateway` resources can be created from the metric
62+
`gateway_conditions` and watching for `Gateway`s without the
63+
`Programmed` condition.

test-data/kube-state-metrics-values.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
collectors: []
2+
13
resources:
24
limits:
35
cpu: 100m

0 commit comments

Comments
 (0)