bottlerocket-update-operator icon indicating copy to clipboard operation
bottlerocket-update-operator copied to clipboard

Brupop is Not Sending Metrics to Datadog

Open Gaurav2586 opened this issue 1 year ago • 5 comments

Despite making the necessary changes to expose OpenMetrics from the brupop-controller and configuring the Datadog Agent to scrape these metrics, we are not seeing any metrics data in Datadog.

Adding annotation is not possible with provided brupop helm chart, I added the annotation to my container manually [FYI]

My files looks like -


apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: brupop-controller
  namespace: {{ .Values.namespace }}
  labels:
    app.kubernetes.io/component: brupop-controller
    app.kubernetes.io/managed-by: brupop
    app.kubernetes.io/part-of: brupop
    brupop.bottlerocket.aws/component: brupop-controller
spec:
  endpoints:
  - port: http-metrics
    path: /metrics
  namespaceSelector:
    matchNames:
      - {{ .Values.namespace }}
  selector:
    matchLabels:
      brupop.bottlerocket.aws/component: brupop-controller

apiVersion: v1
kind: Service
metadata:
  annotations:
    prometheus.io/port: "8080"
    prometheus.io/scrape: "true"
  labels:
    app.kubernetes.io/component: brupop-controller
    app.kubernetes.io/managed-by: brupop
    app.kubernetes.io/part-of: brupop
    brupop.bottlerocket.aws/component: brupop-controller
  name: brupop-controller-server
  namespace: {{ .Values.namespace }}
spec:
  ports:
    - name: http-metrics
      port: 8080
      targetPort: http-metrics
      protocol: TCP
  selector:
    brupop.bottlerocket.aws/component: brupop-controller


Deployment file changes - controller-deployment.yaml [Added the below config]
ports:
           - name: http-metrics
             containerPort: 8080
             protocol: TCP

Added Annotation in container related to DD agent like below -

- name: brupop-operator  # Full name bottlerocket-update-operator
    namespace: brupop-bottlerocket-aws
    version: "1.1.0"
    chartName: bottlerocket-update-operator
    values:
      podAnnotations:
        ad.datadoghq.com/controller.checks: |
          {
            "brupop": {
              "init_config": {},
              "instances": [
                {
                  "openmetrics_endpoint": "http://%%host%%:8080/metrics"
                }
              ]
            }
          }


Please let me know if I am missing anything on my end or sending metrics is not possible via open metrics to datadog ?

Gaurav2586 avatar Jul 12 '24 18:07 Gaurav2586