diff --git a/charts/agent/Chart.yaml b/charts/agent/Chart.yaml index 446ffc0c..b8323397 100644 --- a/charts/agent/Chart.yaml +++ b/charts/agent/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: agent description: Chart to install K8s collection stack based on Observe Agent type: application -version: 0.33.0 +version: 0.34.0 appVersion: "1.1.0" dependencies: - name: opentelemetry-collector diff --git a/charts/agent/README.md b/charts/agent/README.md index 08d8e23b..5da22f84 100644 --- a/charts/agent/README.md +++ b/charts/agent/README.md @@ -1,6 +1,6 @@ # agent -![Version: 0.33.0](https://img.shields.io/badge/Version-0.33.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.1.0](https://img.shields.io/badge/AppVersion-1.1.0-informational?style=flat-square) +![Version: 0.34.0](https://img.shields.io/badge/Version-0.34.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.1.0](https://img.shields.io/badge/AppVersion-1.1.0-informational?style=flat-square) > [!CAUTION] > This chart is under active development and is not meant to be installed yet. @@ -28,6 +28,7 @@ Chart to install K8s collection stack based on Observe Agent |-----|------|---------|-------------| | agent.config.clusterEvents | string | `nil` | | | agent.config.clusterMetrics | string | `nil` | | +| agent.config.global.debug.enabled | bool | `false` | | | agent.config.global.debug.verbosity | string | `"basic"` | | | agent.config.global.exporters.retryOnFailure.enabled | bool | `true` | | | agent.config.global.exporters.retryOnFailure.initialInterval | string | `"1s"` | | diff --git a/charts/agent/templates/_cluster-events-config.tpl b/charts/agent/templates/_cluster-events-config.tpl index 957f358a..87329cca 100644 --- a/charts/agent/templates/_cluster-events-config.tpl +++ b/charts/agent/templates/_cluster-events-config.tpl @@ -430,17 +430,25 @@ processors: # this is a fake object, there is no k8s yaml object for it - set(body, "") +{{- $objectsExporters := (list "otlphttp/observe/entity") -}} +{{- $logsClusterExporters := (list "otlphttp/observe/entity") -}} + +{{- if eq .Values.agent.config.global.debug.enabled true }} + {{- $objectsExporters = concat $objectsExporters ( list "debug/override" ) | uniq }} + {{- $logsClusterExporters = concat $logsClusterExporters ( list "debug/override" ) | uniq }} +{{- end }} + service: extensions: [health_check] pipelines: logs/objects: receivers: [k8sobjects/objects] processors: [memory_limiter, batch, resource/observe_common, transform/unify, observek8sattributes, transform/object] - exporters: [otlphttp/observe/entity, debug/override] + exporters: [{{ join ", " $objectsExporters }}] logs/cluster: receivers: [k8sobjects/cluster] processors: [memory_limiter, batch, resource/observe_common, filter/cluster, transform/cluster] - exporters: [otlphttp/observe/entity, debug/override] + exporters: [{{ join ", " $logsClusterExporters }}] {{- include "config.service.telemetry" . | nindent 2 }} diff --git a/charts/agent/templates/_cluster-metrics-config.tpl b/charts/agent/templates/_cluster-metrics-config.tpl index d5a619bb..d64198b4 100644 --- a/charts/agent/templates/_cluster-metrics-config.tpl +++ b/charts/agent/templates/_cluster-metrics-config.tpl @@ -163,18 +163,26 @@ processors: action: insert value: pod_metrics +{{- $metricsExporters := (list "prometheusremotewrite") -}} +{{- $podMetricsExporters := (list "prometheusremotewrite") -}} + +{{- if eq .Values.agent.config.global.debug.enabled true }} + {{- $metricsExporters = concat $metricsExporters ( list "debug/override" ) | uniq }} + {{- $podMetricsExporters = concat $podMetricsExporters ( list "debug/override" ) | uniq }} +{{- end }} + service: extensions: [health_check] pipelines: metrics: receivers: [k8s_cluster] processors: [memory_limiter, k8sattributes, batch, resource/observe_common, attributes/debug_source_cluster_metrics] - exporters: [prometheusremotewrite, debug/override] + exporters: [{{ join ", " $metricsExporters }}] {{- if .Values.application.prometheusScrape.enabled }} metrics/pod_metrics: receivers: [prometheus/pod_metrics] processors: [memory_limiter, k8sattributes, batch, resource/observe_common, attributes/debug_source_pod_metrics] - exporters: [prometheusremotewrite, debug/override] + exporters: [{{ join ", " $podMetricsExporters }}] {{ end -}} {{- include "config.service.telemetry" . | nindent 2 }} diff --git a/charts/agent/templates/_monitor-config.tpl b/charts/agent/templates/_monitor-config.tpl index bfeab83d..c051a737 100644 --- a/charts/agent/templates/_monitor-config.tpl +++ b/charts/agent/templates/_monitor-config.tpl @@ -67,13 +67,19 @@ processors: action: insert value: agent_monitor +{{- $metricsExporters := (list "prometheusremotewrite") -}} + +{{- if eq .Values.agent.config.global.debug.enabled true }} + {{- $metricsExporters = concat $metricsExporters ( list "debug/override" ) | uniq }} +{{- end }} + service: extensions: [health_check] pipelines: metrics: receivers: [prometheus/collector] processors: [memory_limiter, k8sattributes, batch, resource/observe_common, attributes/debug_source_agent_monitor] - exporters: [prometheusremotewrite] + exporters: [{{ join ", " $metricsExporters }}] {{- include "config.service.telemetry" . | nindent 2 }} {{- end }} diff --git a/charts/agent/templates/_node-logs-metrics-config.tpl b/charts/agent/templates/_node-logs-metrics-config.tpl index 5665e020..b4a8c586 100644 --- a/charts/agent/templates/_node-logs-metrics-config.tpl +++ b/charts/agent/templates/_node-logs-metrics-config.tpl @@ -163,6 +163,17 @@ processors: action: insert value: kubeletstats_metrics +# Create intermediate lists for pipeline arrays to then modify based on values.yaml +{{- $logsExporters := (list "otlphttp/observe/base") -}} +{{- $hostmetricsExporters := (list "prometheusremotewrite") -}} +{{- $kubeletstatsExporters := (list "prometheusremotewrite") -}} + +{{- if eq .Values.agent.config.global.debug.enabled true }} + {{- $logsExporters = concat $logsExporters ( list "debug/override" ) | uniq }} + {{- $hostmetricsExporters = concat $hostmetricsExporters ( list "debug/override" ) | uniq }} + {{- $kubeletstatsExporters = concat $kubeletstatsExporters ( list "debug/override" ) | uniq }} +{{- end }} + service: extensions: [health_check, file_storage] pipelines: @@ -170,19 +181,19 @@ service: logs: receivers: [filelog] processors: [memory_limiter, k8sattributes, batch, resourcedetection/cloud, resource/observe_common, attributes/debug_source_pod_logs] - exporters: [otlphttp/observe/base, debug/override] + exporters: [{{ join ", " $logsExporters }}] {{- end -}} {{- if .Values.node.metrics.enabled }} metrics/hostmetrics: receivers: [hostmetrics] processors: [memory_limiter, k8sattributes, batch, resourcedetection/cloud, resource/observe_common, attributes/debug_source_hostmetrics] - exporters: [prometheusremotewrite, debug/override] + exporters: [{{ join ", " $hostmetricsExporters }}] {{- end -}} {{- if .Values.node.containers.metrics.enabled }} metrics/kubeletstats: receivers: [kubeletstats] processors: [memory_limiter, k8sattributes, batch, resourcedetection/cloud, resource/observe_common, attributes/debug_source_kubletstats_metrics] - exporters: [prometheusremotewrite, debug/override] + exporters: [{{ join ", " $kubeletstatsExporters }}] {{- end -}} {{- include "config.service.telemetry" . | nindent 2 }} diff --git a/charts/agent/values.yaml b/charts/agent/values.yaml index b0336d45..8a621538 100644 --- a/charts/agent/values.yaml +++ b/charts/agent/values.yaml @@ -120,6 +120,7 @@ agent: loggingLevel: WARN loggingEncoding: console debug: + enabled: false # values basic, normal, detailed verbosity: basic # additional otel collector config for cluster-events deployment