Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions otel-ecs-ec2/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

## ecs-ec2-integration

### 0.0.4 / 2025-11-03

* [FEATURE] Add support for tail sampling with gateway deployment via `opentelemetry-gateway` configuration.
* [FEATURE] Add load balancing configuration for trace routing to gateway (`presets.loadBalancing`).

### 0.0.3 / 2025-09-09

* [CHANGE] Bump Coralogix OTEL collector image to `coralogixrepo/coralogix-otel-collector:v0.5.1` (aligned in Helm values, example manifest, and Terraform `image_version` default).
Expand Down
9 changes: 7 additions & 2 deletions otel-ecs-ec2/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: v2
name: ecs-ec2-integration
description: ECS-EC2 OpenTelemetry Integration
version: 0.0.3
version: 0.0.4
keywords:
- OpenTelemetry Collector
- OpenTelemetry Agent
Expand All @@ -11,9 +11,14 @@ keywords:
dependencies:
- name: opentelemetry-collector
alias: opentelemetry-agent
version: "0.119.8"
version: "0.120.5"
repository: https://cgx.jfrog.io/artifactory/coralogix-charts-virtual
condition: opentelemetry-agent.enabled
- name: opentelemetry-collector
alias: opentelemetry-gateway
version: "0.120.5"
repository: https://cgx.jfrog.io/artifactory/coralogix-charts-virtual
condition: opentelemetry-gateway.enabled
sources:
- https://github.com/coralogix/opentelemetry-helm-charts/tree/main/charts/opentelemetry-collector
maintainers:
Expand Down
108 changes: 106 additions & 2 deletions otel-ecs-ec2/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ global:
defaultSubsystemName: "integration"
logLevel: "info"
collectionInterval: "30s"
version: "0.0.2"
version: "0.0.4"
deploymentEnvironmentName: ""

opentelemetry-agent:
Expand All @@ -14,7 +14,7 @@ opentelemetry-agent:
mode: daemonset
image:
repository: coralogixrepo/coralogix-otel-collector
tag: v0.5.1
tag: v0.5.2
# Extra config for the collector
# This is used to add extra receivers, processors, exporters, and connectors
# to the "logs", "metrics", and "traces" pipelines and other pipelines managed by the chart.
Expand Down Expand Up @@ -287,6 +287,8 @@ opentelemetry-agent:
coralogixExporter:
enabled: true
privateKey: ${env:CORALOGIX_PRIVATE_KEY}
# pipelines: ["metrics", "logs"] # uncomment this to use the loadbalancing exporter for traces

# Configures resource detection processors to add system and environment information.
# Also configures volumes and volume mounts for the collector.
resourceDetection:
Expand All @@ -295,6 +297,22 @@ opentelemetry-agent:
# Applies semantic convention transformations.
semconv:
enabled: true

# Load balancing configuration for tail sampling

loadBalancing:
enabled: false
routingKey: "traceID"
hostname: "coralogix-opentelemetry-gateway"
awsCloudMap:
enabled: false
namespace: "cx-otel"
serviceName: "grpc-gateway"
interval: "10s"
port: 4317
dnsResolverInterval: "10s"
dnsResolverTimeout: "5s"

config:
# extensions:
# zpages:
Expand Down Expand Up @@ -328,4 +346,90 @@ opentelemetry-agent:
exporters: []
processors:
- memory_limiter
# receivers: []

# Gateway configuration for tail sampling

opentelemetry-gateway:
enabled: false
distribution: "ecs"
mode: deployment
fullnameOverride: coralogix-opentelemetry-gateway
replicaCount: 1

extraEnvs:
- name: CORALOGIX_PRIVATE_KEY
value: ${env:CORALOGIX_PRIVATE_KEY}

presets:
fleetManagement:
enabled: true
agentType: "gateway"
clusterName: "{{.Values.global.clusterName}}"
metadata:
enabled: true
clusterName: "{{.Values.global.clusterName}}"
integrationName: "coralogix-integration-ecs-ec2-gateway"

# Configures the collector to collect its own metrics using Prometheus receiver
collectorMetrics:
enabled: true
scrapeInterval: "{{.Values.global.collectionInterval}}"

# Configures resource detection processors to add system and environment information
resourceDetection:
enabled: true
pipeline: "metrics"

# Configures the collector to expose zPages for debugging
zpages:
enabled: true

# Configures the collector to expose pprof for profiling
pprof:
enabled: true

# Configuration for the batch processor
batch:
enabled: true

# Configures the collector to export data to Coralogix
coralogixExporter:
enabled: true
privateKey: ${env:CORALOGIX_PRIVATE_KEY}

# Configures the collector to receive OTLP data
otlpReceiver:
enabled: true

config:
processors:
tail_sampling:
policies:
[
{
name: errors-policy,
type: status_code,
status_code: {status_codes: [ERROR]}
},
{
name: randomized-policy,
type: probabilistic,
probabilistic: {sampling_percentage: 10}
},
]
service:
telemetry:
logs:
level: "{{ .Values.global.logLevel }}"
pipelines:
metrics:
exporters: []
processors:
- memory_limiter
traces:
exporters: []
processors:
- memory_limiter
- tail_sampling
# receivers: []
Loading