CrunchyData / postgres-operator-examples

Examples for deploying applications with PGO, the Postgres Operator from Crunchy Data
https://access.crunchydata.com/documentation/postgres-operator/v5/
Apache License 2.0
190 stars 4.73k forks source link

Metrics endpoint is not exposed by Service #61

Open alex1989hu opened 2 years ago

alex1989hu commented 2 years ago

I found during Postgres Operator startup that the metrics server is binded to 8080 port but unfortunately it is not exposed by k8s Service.

Actual log line:

time="2021-11-19T12:44:10Z" level=info msg="metrics server is starting to listen" addr=":8080" file="sigs.k8s.io/controller-runtime@v0.8.3/pkg/log/deleg.go:130" func="log.(*DelegatingLogger).Info" version=5.0.3-0

Prometheus metrics are available at :8080/metrics URL.

jkatz commented 2 years ago

@alex1989hu These are controller metrics -- is there anything specific you are looking to collect?

alex1989hu commented 2 years ago

@alex1989hu These are controller metrics -- is there anything specific you are looking to collect?

For now, there are no specific metrics but it is enabled in PGO. Did not check PGO source code whether we set additional metrics or not.

Propose to expose it (see PR) or disable metrics endpoint in PGO

benjaminjb commented 2 years ago

Hey Alex, just wanted to let you know that I've added this (and the related PR) to our backlog to make a decision on whether we want to expose those metrics or disable them by default.

genofire commented 1 year ago

you should also add Manifests (Pod or ServiceMonitor) for Prometheus-Operator (like in #94 ) for the Operator to scrape that metrics.

And maybe PrometheusRules with a default set of AlertingRules.

jcpunk commented 1 year ago

I'll confess I'd love to see this in the helm and kustomize examples...