Skip to content

Add KEDA metrics collection support to Container Insights - #345

Merged
sky333999 merged 6 commits into
aws-observability:mainfrom
vaishnavi-30-beep:feature/keda-integration
Aug 7, 2026
Merged

Add KEDA metrics collection support to Container Insights#345
sky333999 merged 6 commits into
aws-observability:mainfrom
vaishnavi-30-beep:feature/keda-integration

Conversation

@vaishnavi-30-beep

@vaishnavi-30-beep vaishnavi-30-beep commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Summary

Add support for scraping Prometheus metrics from the KEDA operator as part of Container Insights solutions.

Changes

  • Add KEDA Prometheus receiver with pod service discovery
  • Add KEDA processor pipeline (scope, attributes, resource detection, batching)
  • Add `otelContainerInsights.solutions.keda` configuration in values.yaml
  • Gated behind `solutions.keda.enabled` toggle (default: true)

Configuration

otelContainerInsights:
  solutions:
    keda:
      enabled: true
      namespace: keda

Testing

Notes

  • Follows same pattern as Karpenter integration
  • No additional RBAC needed (existing ClusterRole permissions sufficient)
  • Gracefully degrades when KEDA is not installed (no targets found, no errors)"

Rename otelContainerInsights.integrations to otelContainerInsights.solutions
and add a global solutions.enabled toggle that disables all solutions at
once. Individual solution flags (karpenter.enabled, keda.enabled) only
activate when the global toggle is true.
@vaishnavi-30-beep
vaishnavi-30-beep force-pushed the feature/keda-integration branch from a9c4fa5 to f000fcf Compare August 7, 2026 15:50
Drop rest_client_*, apiserver_*, workqueue_*, process_*, and go_* metrics
from the KEDA scrape pipeline. These are generic Go runtime/client-go
metrics that conflict with the control plane (apiserver) pipeline.

Also removes Karpenter config from this branch (handled in separate PR)
and removes conditional guard on cloud.resource_id ARN construction.
@vaishnavi-30-beep
vaishnavi-30-beep force-pushed the feature/keda-integration branch from f000fcf to 9141446 Compare August 7, 2026 15:59
sky333999
sky333999 previously approved these changes Aug 7, 2026
@sky333999
sky333999 dismissed their stale review August 7, 2026 16:37

Pending a test fix

Both resourcedetection processors now switch to [aks, azure] detectors
on AKS mode, suppressing host/VM attributes that would leak the
scraper node's identity. Aligns with the shared resourcedetection
processor pattern.
@sky333999
sky333999 merged commit 71a298f into aws-observability:main Aug 7, 2026
36 of 39 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants