OpenTelemetry Collector deployment, instrumentation (Java/Python/Node.js/.NET/Go), and OTTL pipeline transforms for Coralogix — coralogix exporter config, Helm chart selection, Kubernetes topology, ECS/EKS/GKE deployments, SDK setup, APM transactions, and OTTL cardinality/PII/routing.
98
97%
Does it follow best practices?
Impact
99%
1.13xAverage score across 81 eval scenarios
Advisory
Suggest reviewing before use
Fleet Management (OpAMP supervisor + remote config via the Coralogix UI) intersects with the OTel Collector configuration in a few places. Only those overlap points are covered here — deep OpAMP protocol internals, supervisor-binary flags, remote-config-rendering precedence, the Coralogix Distribution of OpenTelemetry (CDOT), and the Fleet Manager UI itself are out of scope for this skill.
ingress. prefix — unlike the coralogix exporterThe single most common confusion: the coralogix exporter's domain: field is a bare hostname (eu2.coralogix.com), but the supervisor's OpAMP endpoint is a full URL with the ingress prefix:
# coralogix EXPORTER — bare hostname
exporters:
coralogix:
domain: "eu2.coralogix.com"
# SUPERVISOR OpAMP endpoint — full URL WITH ingress prefix
presets:
fleetManagement:
enabled: true
supervisor:
enabled: true
server:
endpoint: "https://ingress.eu2.coralogix.com/opamp/v1"Both are right in their own place. They look inconsistent because they route through different Coralogix ingest paths. If a user hardcodes https://ingress.<domain> as their coralogix exporter domain: in order to make the supervisor work, they have mixed the two up — separate them.
The chart handles this automatically when .Values.global.domain is set. Direct-to-helm users editing a raw config by hand are the ones who get caught.
presets.fleetManagement.supervisor.enabled: true overrides values.yaml at runtimeWhen the supervisor is enabled, the collector's runtime config comes from the Fleet Manager UI, not from the Helm values.yaml applied at deploy time. A user pushing changes via helm upgrade (especially from ArgoCD) and seeing "why isn't my change taking effect" has hit this.
The precedence is:
Fleet Manager UI config > values.yaml at helm upgrade timeValues.yaml still matters for: chart version, pod resource requests, service account, ingress endpoints, presets themselves. It does not matter for: receiver/processor/exporter configuration, pipeline wiring, filter/transform OTTL.
Diagnostic: if a user says "I redeployed with new values but the config didn't change," check whether supervisor.enabled: true. If so, refer to the Fleet Manager UI.
Opt-out: set supervisor.enabled: false (chart values) and manage config via helm as usual. Users using pure GitOps (ArgoCD with declarative intent) typically prefer this.
opamp worksBoth Fleet Management shapes are available on Windows with modern collector builds — verified against the rendered otel-windows-standalone chart (collector v0.130.7), which ships extensions: [opamp] by default.
-Supervisor on the installer) works regardless of collector version — it runs a separate opampsupervisor service.The trap — older image pins:
otel-integration's opentelemetry-agent-windows sub-preset historically defaults to coralogixrepo/opentelemetry-collector-contrib-windows:0.92.0, which predates OpAMP on Windows. A user enabling extensions: [opamp] there will see the collector refuse to start.otel-ecs-ec2-windows similarly pins an older image in its CloudFormation template.Practical implication: a Windows user whose extensions: [opamp] fails is either on an old image (fix: bump, or use the supervisor wrapper) or on the K8s Windows sub-preset (same fix). On modern standalone, it just works.
When any of these appear in a user's issue, refer to the supervisor skill (or this file's section 2):
helm upgrade says applied, but the pipeline behavior is unchanged."opamp extension enabled but the collector won't start." (Likely Windows, see section 3.)X-Coralogix-Distribution header in the exporter config had no effect." (It's set by the supervisor; edit in Fleet Manager.)Questions that need the OpAMP supervisor / Fleet Manager internals rather than the collector-config overlap covered here:
otel-supervised-cdot or otel-supervised-ebpf-profiler image specifics.Those sit with the Fleet Manager / CDOT documentation, not with this OTel Collector skill.
https://ingress.{domain}/opamp/v1. The coralogix exporter domain: is a bare hostname. Two different fields, two different shapes — don't mix them.supervisor.enabled: true, Fleet Manager UI beats values.yaml at runtime. ArgoCD users usually want supervisor.enabled: false.opamp and the supervisor wrapper — on modern builds. The otel-windows-standalone chart (collector ≥ v0.130) renders extensions: [opamp] by default. Older pinned images (notably contrib-windows:0.92.0 used in the K8s Windows sub-preset and otel-ecs-ec2-windows) predate it — there, use the -Supervisor wrapper or bump the image.helm upgrade has no effect, X-Coralogix-Distribution changes ignored.evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
scenario-11
scenario-12
scenario-13
scenario-14
scenario-15
scenario-16
scenario-17
scenario-18
scenario-19
scenario-20
scenario-21
scenario-22
scenario-23
scenario-24
scenario-25
scenario-26
scenario-27
scenario-28
scenario-29
scenario-30
scenario-31
scenario-32
scenario-33
scenario-34
scenario-35
scenario-36
scenario-37
scenario-38
scenario-39
scenario-40
scenario-41
scenario-42
scenario-43
scenario-44
scenario-45
scenario-46
scenario-47
scenario-48
scenario-49
scenario-50
scenario-51
scenario-52
scenario-53
scenario-54
scenario-55
scenario-56
scenario-57
scenario-58
scenario-59
scenario-60
scenario-61
scenario-62
scenario-63
scenario-64
scenario-65
scenario-66
scenario-67
scenario-68
scenario-69
scenario-70
scenario-71
scenario-72
scenario-73
scenario-74
scenario-75
scenario-76
scenario-77
scenario-78
scenario-79
scenario-80
scenario-81
skills
opentelemetry
opentelemetry-collector
references
opentelemetry-instrumentation
opentelemetry-ottl