Skip to content

Commit

Permalink
Add ClickHouse MetricsConfiguration
Browse files Browse the repository at this point in the history
Signed-off-by: SK Ali Arman <[email protected]>
  • Loading branch information
sheikh-arman committed Nov 11, 2024
1 parent 2abe0d6 commit 6a13413
Showing 1 changed file with 175 additions and 0 deletions.
175 changes: 175 additions & 0 deletions charts/kubedb-metrics/templates/clickhouse/kubedb-com-clickhouse.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
apiVersion: metrics.appscode.com/v1alpha1
kind: MetricsConfiguration
metadata:
name: kubedb-com-clickhouse
spec:
targetRef:
apiVersion: kubedb.com/v1alpha2
kind: ClickHouse
commonLabels:
- key: app
valuePath: .metadata.name
- key: app_namespace
valuePath: .metadata.namespace
metrics:
- name: created
help: "Unix creation time stamp"
type: gauge
field:
path: .metadata.creationTimestamp
type: DateTime
metricValue:
valueFromPath: .metadata.creationTimestamp

- name: replicas
help: "Number of replicas of clickhouse instance"
type: gauge
params:
- key: obj
valuePath: .
metricValue:
valueFromExpression: resource_replicas(obj)

- name: status_phase
help: "ClickHouse instance current phase"
type: gauge
field:
path: .status.phase
type: String
params:
- key: phase
valuePath: .status.phase
states:
labelKey: phase
values:
- labelValue: Ready
metricValue:
valueFromExpression: "int(phase == 'Ready')"
- labelValue: Halted
metricValue:
valueFromExpression: "int(phase == 'Halted')"
- labelValue: Provisioning
metricValue:
valueFromExpression: "int(phase == 'Provisioning')"
- labelValue: Critical
metricValue:
valueFromExpression: "int(phase == 'Critical')"
- labelValue: NotReady
metricValue:
valueFromExpression: "int(phase == 'NotReady')"
- labelValue: DataRestoring
metricValue:
valueFromExpression: "int(phase == 'DataRestoring')"

- name: info
help: "ClickHouse instance information"
type: gauge
labels:
- key: version
valuePath: .spec.version
- key: storageType
valuePath: .spec.storageType
- key: deletionPolicy
valuePath: .spec.deletionPolicy
- key: requireSSL
valuePath: .spec.tls
metricValue:
value: 1

- name: status_conditions
help: "ClickHouse instance status condition"
type: gauge
field:
path: .status.conditions
type: Array
labels:
- key: type
valuePath: .status.conditions[*].type
- key: status
valuePath: .status.conditions[*].status
metricValue:
value: 1

- name: resource_request_cpu
help: "Requested CPU by ClickHouse in core"
type: gauge
labels:
- key: unit
value: core
params:
- key: obj
valuePath: .
- key: resourceType
value: cpu
metricValue:
valueFromExpression: total_resource_requests(obj, resourceType)

- name: resource_request_memory
help: "Requested memory by ClickHouse in byte"
type: gauge
labels:
- key: unit
value: byte
params:
- key: obj
valuePath: .
- key: resourceType
value: memory
metricValue:
valueFromExpression: total_resource_requests(obj, resourceType)

- name: resource_request_storage
help: "Requested storage by ClickHouse in byte"
type: gauge
labels:
- key: unit
value: byte
params:
- key: obj
valuePath: .
- key: resourceType
value: storage
metricValue:
valueFromExpression: total_resource_requests(obj, resourceType)

- name: resource_limit_cpu
help: "CPU limit for ClickHouse in core"
type: gauge
labels:
- key: unit
value: core
params:
- key: obj
valuePath: .
- key: resourceType
value: cpu
metricValue:
valueFromExpression: total_resource_limits(obj, resourceType)

- name: resource_limit_memory
help: "Memory limit for ClickHouse in byte"
type: gauge
labels:
- key: unit
value: byte
params:
- key: obj
valuePath: .
- key: resourceType
value: memory
metricValue:
valueFromExpression: total_resource_limits(obj, resourceType)

- name: resource_limit_storage
help: "Storage limit for ClickHouse in byte"
type: gauge
labels:
- key: unit
value: byte
params:
- key: obj
valuePath: .
- key: resourceType
value: storage
metricValue:
valueFromExpression: total_resource_limits(obj, resourceType)

0 comments on commit 6a13413

Please sign in to comment.