pelorus
pelorus copied to clipboard
Lead Time to Change does not reflect on grafana with two type of committime-exporter enabled
OpenShift version
4.10
Problem description
two deployment , go-hello-pipeline and mongo-db. none of them reflect the lead time to change from commit-exporter (both providers image and container image)
go-hello-pipeline image build from tekton with label and annotation with task and transferred from internal registry to standalone quay.
[root@lb-2 ~]# podman inspect quay.apps.test.lab.local/paco/go-pipeline-hello| jq -r '.[0].Config.Labels'
{
"architecture": "x86_64",
"build-date": "2022-10-26T01:47:08",
"com.redhat.component": "go-toolset-container",
"com.redhat.license_terms": "https://www.redhat.com/agreements",
"description": "Go Toolset available as a container is a base platform for building and running various Go applications and frameworks. Go is an easy to learn, powerful, statically typed language in the C/C++ tradition with garbage collection, concurrent programming support, and memory safety features.",
"distribution-scope": "public",
"io.buildah.version": "1.23.1",
"io.k8s.description": "Go Toolset available as a container is a base platform for building and running various Go applications and frameworks. Go is an easy to learn, powerful, statically typed language in the C/C++ tradition with garbage collection, concurrent programming support, and memory safety features.",
"io.k8s.display-name": "Go 1.17.12",
"io.openshift.s2i.build.image": "image-registry.openshift-image-registry.svc:5000/openshift/golang:1.17-ubi7",
"io.openshift.s2i.build.source-location": ".",
"io.openshift.s2i.scripts-url": "image:///usr/libexec/s2i",
"io.openshift.tags": "builder,golang,golang117,rh-golang117,go",
"io.s2i.scripts-url": "image:///usr/libexec/s2i",
"name": "devtools/go-toolset-rhel7",
"release": "2.1666745579",
"summary": "Platform for building and running Go applications",
"url": "https://access.redhat.com/containers/#/registry.access.redhat.com/devtools/go-toolset-rhel7/images/1.17.12-2.1666745579",
"vcs-ref": "f408ea11d446fcf044d4f8ffab35b958e6e8131d",
"vcs-type": "git",
"vendor": "Red Hat, Inc.",
"version": "1.17.12"
}
mongo-db image build from Build Config with label automatically attached and transferred from internal registry to standalone quay.
podman inspect quay.apps.test.lab.local/paco/todolist-mongo-go| jq -r '.[0].Config.Labels'
{
"io.buildah.version": "1.26.4",
"io.openshift.build.commit.author": "PacoPeng <[email protected]>",
"io.openshift.build.commit.date": "Fri Nov 3 07:53:12 2023 -0400",
"io.openshift.build.commit.id": "8ede72c8f8fdb5724563cae0961d91351e59eef0",
"io.openshift.build.commit.message": "Bug fix 20",
"io.openshift.build.commit.ref": "master",
"io.openshift.build.name": "todolist-128",
"io.openshift.build.namespace": "mongo-persistent",
"io.openshift.build.source-location": "http://10.73.69.214:7010/root/mig-demo-apps.git"
}
Steps to reproduce
- deploy pelorus 0.0.8 with operator in openshift 4.10.60
- configure pelorus instance with deployment-exporter and two committer-exporter
- upload prepared images from dev env which build by Build configure and Tekton to quay.
- created two deployment one is using the image build by Build config and another one use the image build by pipeline.
- check grafana dashboard
Pelorus configuration:
spec:
prometheus_storage: true
thanos_bucket_name: pelorus-f8a6ec8f-07bc-491d-bd15-f92d4f959661
openshift_prometheus_basic_auth_pass: changeme
prometheus_retention: 1y
bucket_access_point: >-
ocs-storagecluster-cephobjectstore-https-openshift-storage.apps.ocp2.rd.paas.pek2.redhat.com
custom_ca: true
federate_openshift_monitoring:
enabled: false
openshift_prometheus_htpasswd_auth: 'internal:{SHA}+pvrmeQCmtWmYVOZ57uuITVghrM='
exporters:
instances:
- app_name: deploytime-exporter
enabled: true
exporter_type: deploytime
extraEnv:
- name: LOG_LEVEL
value: DEBUG
- name: NAMESPACES
value: paco-demo
- app_name: committime-exporter
enabled: true
exporter_type: committime
extraEnv:
- name: LOG_LEVEL
value: DEBUG
- name: NAMESPACES
value: paco-demo
- name: PROVIDER
value: image
- app_name: committime-exporter4
enabled: true
exporter_type: committime
extraEnv:
- name: NAMESPACES
value: paco-demo
- name: PROVIDER
value: containerimage
prometheus_storage_pvc_capacity: 2Gi
prometheus_retention_size: 1GB
prometheus_storage_pvc_storageclass: managed-nfs-storage
bucket_access_key: <key>
bucket_secret_access_key: <secret>
deployment -prod-go-pipeline-hello
kind: Deployment
apiVersion: apps/v1
metadata:
annotations:
deployment.kubernetes.io/revision: '1'
resourceVersion: '1859944991'
name: prod-go-pipeline-hello
namespace: paco-demo
labels:
app: go-pipeline-hello
app.kubernetes.io/component: go-pipeline-hello
app.kubernetes.io/instance: go-pipeline-hello
app.kubernetes.io/name: go-pipeline-hello
app.kubernetes.io/part-of: go-pipeline-hello
app.openshift.io/runtime: golang
app.openshift.io/runtime-version: 1.17-ubi7
spec:
replicas: 1
selector:
matchLabels:
app: go-pipeline-hello
template:
metadata:
creationTimestamp: null
labels:
app: go-pipeline-hello
app.kubernetes.io/name: go-pipeline-hello
deployment: go-pipeline-hello
spec:
containers:
- name: go-pipeline-hello
image: 'quay.apps.test.lab.local/paco/go-pipeline-hello:latest'
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
imagePullPolicy: Always
restartPolicy: Always
terminationGracePeriodSeconds: 30
dnsPolicy: ClusterFirst
securityContext: {}
schedulerName: default-scheduler
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 25%
maxSurge: 25%
revisionHistoryLimit: 10
progressDeadlineSeconds: 600
deployment -mongo
kind: Deployment
apiVersion: apps/v1
metadata:
annotations:
deployment.kubernetes.io/revision: '3'
resourceVersion: '1859975783'
name: mongo
namespace: paco-demo
labels:
app.kubernetes.io/name: prod-mongo
e2e-app: 'true'
spec:
replicas: 1
selector:
matchLabels:
app: mongo
template:
metadata:
creationTimestamp: null
labels:
app: mongo
app.kubernetes.io/name: prod-mongo
e2e-app: 'true'
spec:
restartPolicy: Always
serviceAccountName: default
schedulerName: default-scheduler
terminationGracePeriodSeconds: 30
securityContext: {}
containers:
- resources:
limits:
memory: 512Mi
terminationMessagePath: /dev/termination-log
name: mongo
env:
- name: MONGO_INITDB_ROOT_USERNAME
value: changeme
- name: MONGO_INITDB_ROOT_PASSWORD
value: changeme
- name: MONGO_INITDB_DATABASE
value: todolist
securityContext:
privileged: true
ports:
- name: mongo
containerPort: 27017
protocol: TCP
imagePullPolicy: Always
volumeMounts:
- name: mongo-data
mountPath: /data/db
terminationMessagePolicy: File
image: 'quay.apps.test.lab.local/paco/todolist-mongo-go:latest'
serviceAccount: default
volumes:
- name: mongo-data
emptyDir: {}
dnsPolicy: ClusterFirst
strategy:
type: Recreate
revisionHistoryLimit: 10
progressDeadlineSeconds: 600
Current behavior
no lead time to change
Expected behavior
There should be a lead time to change metrics appeared in the dashboard. as two committer-exporter(image and container image) configured.
Code of Conduct
- [X] I agree to follow Pelorus's Code of Conduct