diff --git a/README.md b/README.md index 5f13bdb..d125edd 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ You can create the PrometheusRule resource directly or modify it as needed. All metrics have GVK labels to allow more specific matching and filtering. For example: -``` +```yaml { customresource_group="gateway.networking.k8s.io" customresource_kind="Gateway", @@ -78,7 +78,7 @@ For example: In addition, all metrics have a `name` and `namespace` label, where applicable: -``` +```yaml { namespace="", name="" @@ -88,331 +88,7 @@ In addition, all metrics have a `name` and `namespace` label, where applicable: All metrics are prefixed with `gatewayapi_`. For example, `gatewayapi_gateway_status`. -### Gateway metrics - -#### gatewayapi_gateway_info - -Information about a Gateway, Gauge -``` -gatewayapi_gateway_info{namespace="",name="",gatewayclass=""} 1 -``` - -#### gatewayapi_gateway_labels - -Kubernetes labels converted to Prometheus labels, Gauge -``` -gatewayapi_gateway_labels{namespace="",name="",GATEWAY_LABEL_NAME=""} 1 -``` - -#### gatewayapi_gateway_created - -Unix creation timestamp in seconds, Gauge -``` -gatewayapi_gateway_created{namespace="",name=""} 1690879977 -``` - -#### gatewayapi_gateway_deleted - -Unix deletion timestamp in seconds, Gauge -``` -gatewayapi_gateway_deleted{namespace="",name=""} 1690879977 -``` - -#### gatewayapi_gateway_listener_info - -Per [Listener](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io%2fv1beta1.Listener) information, Gauge - -``` -gatewayapi_gateway_listener_info{namespace="",name="",listener_name="",port="",protocol="",hostname="","tls_mode"=""} 1 -``` - -#### gatewayapi_gateway_status - -[Status Conditions](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.GatewayStatus) of Gateway, Gauge, 1 or 0 (1 means this condition type currently applies to this gateway) - -``` -gatewayapi_gateway_status{namespace="",name="",type=""} 1 -``` - -#### gatewayapi_gateway_status_listener_attached_routes - -Number of [attached routes](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ListenerStatus) for an individual listener, Gauge -``` -gatewayapi_gateway_status_listener_attached_routes{namespace="",name="",listener_name=""} 5 -``` - -#### gatewayapi_gateway_status_address_info - -[Address](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.GatewayStatusAddress) types and values, Gauge - -``` -gatewayapi_gateway_status_address_info{namespace="",name="",type="",value="
"} 1 -``` - -### GatewayClass metrics - -#### gatewayapi_gatewayclass_info - -Information about a Gateway, Gauge -``` -gatewayapi_gatewayclass_info{name=""} 1 -``` - -#### gatewayapi_gatewayclass_labels - -Kubernetes labels converted to Prometheus labels, Gauge -``` -gatewayapi_gatewayclass_labels{name="",GATEWAYCLASS_LABEL_NAME=""} 1 -``` - -#### gatewayapi_gatewayclass_created - -Unix creation timestamp in seconds, Gauge -``` -gatewayapi_gatewayclass_created{name=""} 1690879977 -``` - -#### gatewayapi_gatewayclass_deleted - -Unix deletion timestamp in seconds, Gauge -``` -gatewayapi_gatewayclass_deleted{name=""} 1690879977 -``` - -#### gatewayapi_gatewayclass_status - -[Status Conditions](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.GatewayClassStatus) of GatewayClass, Gauge, 1 or 0 (1 means this condition type currently applies to this gateway) - -``` -gatewayapi_gatewayclass_status{name="",type=""} 1 -``` - -#### gatewayapi_gatewayclass_status_supported_features - -``` -gatewayapi_gatewayclass_status_supported_features{name="",features=""} -``` - -### HTTPRoute metrics - -**NOTE** There is no `_info` label for HTTPRoute as no additional information is available to show outside of what's already in below metrics. - -#### gatewayapi_httproute_labels - -Kubernetes labels converted to Prometheus labels, Gauge -``` -gatewayapi_httproute_labels{name="",namespace="",HTTPROUTE_LABEL_NAME=""} 1 -``` - -#### gatewayapi_httproute_created - -Unix creation timestamp in seconds, Gauge -``` -gatewayapi_httproute_created{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_httproute_deleted - -Unix deletion timestamp in seconds, Gauge -``` -gatewayapi_httproute_deleted{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_httproute_hostname_info - -[Hostnames](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.Hostname) to match against the HTTP Host header, Gauge - -``` -gatewayapi_httproute_hostname_info{name="",namespace="",hostname=""} -``` - -#### gatewayapi_httproute_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route wants to be attached to, Gauge - -``` -gatewayapi_httproute_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -#### gatewayapi_httproute_status_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route *is* attached to based on the status, Gauge - -``` -gatewayapi_httproute_status_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -### GRPCRoute metrics - -#### gatewayapi_grpcroute_labels - -Kubernetes labels converted to Prometheus labels, Gauge -``` -gatewayapi_grpcroute_labels{name="",namespace="",grpcroute_LABEL_NAME=""} 1 -``` - -#### gatewayapi_grpcroute_created - -Unix creation timestamp in seconds, Gauge -``` -gatewayapi_grpcroute_created{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_grpcroute_deleted - -Unix deletion timestamp in seconds, Gauge -``` -gatewayapi_grpcroute_deleted{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_grpcroute_hostname_info - -[Hostnames](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.Hostname) to match against the HTTP Host header, Gauge - -``` -gatewayapi_grpcroute_hostname_info{name="",namespace="",hostname=""} -``` - -#### gatewayapi_grpcroute_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route wants to be attached to, Gauge - -``` -gatewayapi_grpcroute_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -#### gatewayapi_grpcroute_status_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route *is* attached to based on the status, Gauge - -``` -gatewayapi_grpcroute_status_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -### TCPRoute metrics - -#### gatewayapi_tcproute_labels - -Kubernetes labels converted to Prometheus labels, Gauge -``` -gatewayapi_tcproute_labels{name="",namespace="",tcproute_LABEL_NAME=""} 1 -``` - -#### gatewayapi_tcproute_created - -Unix creation timestamp in seconds, Gauge -``` -gatewayapi_tcproute_created{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_tcproute_deleted - -Unix deletion timestamp in seconds, Gauge -``` -gatewayapi_tcproute_deleted{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_tcproute_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route wants to be attached to, Gauge - -``` -gatewayapi_tcproute_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -#### gatewayapi_tcproute_status_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route *is* attached to based on the status, Gauge - -``` -gatewayapi_tcproute_status_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -### TLSRoute metrics - -#### gatewayapi_tlsroute_labels - -Kubernetes labels converted to Prometheus labels, Gauge -``` -gatewayapi_tlsroute_labels{name="",namespace="",tlsroute_LABEL_NAME=""} 1 -``` - -#### gatewayapi_tlsroute_created - -Unix creation timestamp in seconds, Gauge -``` -gatewayapi_tlsroute_created{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_tlsroute_deleted - -Unix deletion timestamp in seconds, Gauge -``` -gatewayapi_tlsroute_deleted{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_tlsroute_hostname_info - -[Hostnames](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.Hostname) to match against the HTTP Host header, Gauge - -``` -gatewayapi_tlsroute_hostname_info{name="",namespace="",hostname=""} -``` - -#### gatewayapi_tlsroute_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route wants to be attached to, Gauge - -``` -gatewayapi_tlsroute_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -#### gatewayapi_tlsroute_status_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route *is* attached to based on the status, Gauge - -``` -gatewayapi_tlsroute_status_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -### UDPRoute metrics - -#### gatewayapi_udproute_labels - -Kubernetes labels converted to Prometheus labels, Gauge -``` -gatewayapi_udproute_labels{name="",namespace="",udproute_LABEL_NAME=""} 1 -``` - -#### gatewayapi_udproute_created - -Unix creation timestamp in seconds, Gauge -``` -gatewayapi_udproute_created{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_udproute_deleted - -Unix deletion timestamp in seconds, Gauge -``` -gatewayapi_udproute_deleted{name="",namespace=""} 1690879977 -``` - -#### gatewayapi_udproute_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route wants to be attached to, Gauge - -``` -gatewayapi_udproute_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` - -#### gatewayapi_udproute_status_parent_info - -[Parent References](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.ParentReference) that the route *is* attached to based on the status, Gauge - -``` -gatewayapi_udproute_status_parent_info{name="",namespace="",parent_group="",parent_kind="",parent_name="",parent_namespace=""} -``` +The full list of metrics is available at [./METRICS.md](METRICS.md) ## Local dashboard development @@ -427,6 +103,7 @@ development loop where you can change a dashboard jsonnet file, save it, then see the changes automically in a browser. To set up the local development environment, run the following: + ```shell ./hack/local_dev.sh ```