Skip to content

Commit ce96df1

Browse files
committed
Allow for configuration of the period CloudKitty config option
1 parent 168abfe commit ce96df1

File tree

7 files changed

+32
-1
lines changed

7 files changed

+32
-1
lines changed

api/bases/telemetry.openstack.org_cloudkitties.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -541,6 +541,12 @@ spec:
541541
service password from the Secret
542542
type: string
543543
type: object
544+
period:
545+
default: 300
546+
description: Period for collecting metrics in seconds
547+
format: int32
548+
minimum: 1
549+
type: integer
544550
preserveJobs:
545551
default: false
546552
description: PreserveJobs - do not delete jobs after they finished

api/bases/telemetry.openstack.org_telemetries.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1106,6 +1106,12 @@ spec:
11061106
service password from the Secret
11071107
type: string
11081108
type: object
1109+
period:
1110+
default: 300
1111+
description: Period for collecting metrics in seconds
1112+
format: int32
1113+
minimum: 1
1114+
type: integer
11091115
preserveJobs:
11101116
default: false
11111117
description: PreserveJobs - do not delete jobs after they finished

api/v1beta1/cloudkitty_types.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,12 @@ type CloudKittySpecBase struct {
186186
// +nullable
187187
PrometheusTLSCaCertSecret *corev1.SecretKeySelector `json:"prometheusTLSCaCertSecret,omitempty"`
188188

189+
// Period for collecting metrics in seconds
190+
// +kubebuilder:validation:Minimum=1
191+
// +kubebuilder:validation:Optional
192+
// +kubebuilder:default=300
193+
Period int32 `json:"period"`
194+
189195
// S3 related configuration passed to Loki
190196
// +kubebuilder:validation:Optional
191197
// +kubebuilder:default={secret: {name: "cloudkitty-loki-s3", type: "s3"}}

config/crd/bases/telemetry.openstack.org_cloudkitties.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -541,6 +541,12 @@ spec:
541541
service password from the Secret
542542
type: string
543543
type: object
544+
period:
545+
default: 300
546+
description: Period for collecting metrics in seconds
547+
format: int32
548+
minimum: 1
549+
type: integer
544550
preserveJobs:
545551
default: false
546552
description: PreserveJobs - do not delete jobs after they finished

config/crd/bases/telemetry.openstack.org_telemetries.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1106,6 +1106,12 @@ spec:
11061106
service password from the Secret
11071107
type: string
11081108
type: object
1109+
period:
1110+
default: 300
1111+
description: Period for collecting metrics in seconds
1112+
format: int32
1113+
minimum: 1
1114+
type: integer
11091115
preserveJobs:
11101116
default: false
11111117
description: PreserveJobs - do not delete jobs after they finished

controllers/cloudkitty_controller.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1199,6 +1199,7 @@ func (r *CloudKittyReconciler) generateServiceConfigs(
11991199
templateParameters["TransportURL"] = string(transportURLSecret.Data["transport_url"])
12001200
templateParameters["PrometheusHost"] = instance.Status.PrometheusHost
12011201
templateParameters["PrometheusPort"] = instance.Status.PrometheusPort
1202+
templateParameters["Period"] = instance.Spec.Period
12021203
templateParameters["LokiHost"] = lokiHost
12031204
templateParameters["LokiPort"] = 8080
12041205
templateParameters["DatabaseConnection"] = fmt.Sprintf("mysql+pymysql://%s:%s@%s/%s?read_default_file=/etc/my.cnf",

templates/cloudkitty/config/cloudkitty.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ bucket = cloudkitty
3939
url = http://influxdb:8086
4040

4141
[collect]
42-
period = 300
42+
period = {{ .Period }}
4343
wait_periods = 0
4444
metrics_conf = /etc/cloudkitty/metrics.yaml
4545
collector = prometheus

0 commit comments

Comments
 (0)