Contrib repository for the OpenTelemetry Collector
This report summarizes scanner evidence for open-telemetry/opentelemetry-collector-contrib, a Go project with 5,034 GitHub stars. SynthScan examined 2,223,106 lines of code across 12414 source files, recording 973 pattern matches distributed across 18 syntactic categories. The legacy adjusted pattern signal is 0.6 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 871 finding(s).
Are imports declared and package/API names verified? 66 finding(s).
Are wrappers, guards, and repeated structures necessary? 43 finding(s).
Which changes need focused human review? 973 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 973 distinct pattern matches across 18 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .golangci.yml | 221 | - go.opentelemetry.io/otel/semconv/v1.16.0 | COMMENT |
| LOW | .golangci.yml | 241 | # https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/45074 | COMMENT |
| LOW | .golangci.yml | 501 | COMMENT | |
| LOW | cmd/opampsupervisor/e2e_test.go | 401 | // Some test templates wrap storage.directory in double quotes, where backslashes | COMMENT |
| LOW | cmd/opampsupervisor/e2e_test.go | 4201 | // supervisorBinarySizeLimitBytes is the size budget for the supervisor binary, | COMMENT |
| LOW | …/opampsupervisor/testdata/collector/no_pipelines_fg.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | cmd/opampsupervisor/specification/README.md | 81 | # Keys with boolean true/false values that enable a particular | COMMENT |
| LOW | cmd/opampsupervisor/specification/README.md | 201 | # Name of the collector binary as it appears inside the archive the supervisor | COMMENT |
| LOW | cmd/opampsupervisor/supervisor/supervisor.go | 161 | // Last known-good remote config. | COMMENT |
| LOW | …pervisor/supervisor/supervisor_windows_service_test.go | 21 | ) | COMMENT |
| LOW | …mpsupervisor/supervisor/commander/commander_windows.go | 41 | // group, so that sending a ctrl-break event shuts down just the collector. | COMMENT |
| LOW | cmd/opampsupervisor/supervisor/config/agent_package.go | 61 | // https://docs.sigstore.dev/cosign/signing/overview/ | COMMENT |
| LOW | …pampsupervisor/supervisor/templates/nooptelemetry.yaml | 1 | # Internal telemetry for the bootstrap Collector. | COMMENT |
| LOW | cmd/telemetrygen/internal/e2etest/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/datadogextension/config.go | 21 | var _ component.Config = (*Config)(nil) | COMMENT |
| LOW | extension/datadogextension/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 61 | require.NoError(t, err, "should be able to load config file") | COMMENT |
| LOW | extension/sigv4authextension/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | …oogleclientauthextension/internal/clientauth/config.go | 41 | // caller must have serviceusage.services.use permission on the project. | COMMENT |
| LOW | extension/opampcustommessages/custom_messages.go | 41 | COMMENT | |
| LOW | extension/oidcauthextension/config.go | 21 | COMMENT | |
| LOW | extension/oidcauthextension/config.go | 41 | IgnoreAudience bool `mapstructure:"ignore_audience"` | COMMENT |
| LOW | extension/oidcauthextension/extension_test.go | 781 | assert.NoError(c, err) | COMMENT |
| LOW | extension/oauth2clientauthextension/config.go | 41 | // GrantType is set to "urn:ietf:params:oauth:grant-type:jwt-bearer". | COMMENT |
| LOW | extension/oauth2clientauthextension/config.go | 61 | COMMENT | |
| LOW | …n/oauth2clientauthextension/clientcredentialsconfig.go | 41 | // the ClientSecretFile fields with the path to the file. | COMMENT |
| LOW | extension/oauth2clientauthextension/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | …nsion/internal/credentialsfile/credentialsfile_test.go | 301 | } | COMMENT |
| LOW | extension/internal/secretprovider/secretprovider.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/internal/secretprovider/secretprovider.go | 21 | // refresh goroutine whenever the secret value changes. A provider | COMMENT |
| LOW | extension/pprofextension/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/observer/k8sobserver/config.go | 21 | // env: | COMMENT |
| LOW | extension/observer/dockerobserver/config.go | 21 | // receivers. If false or if no hostname is configured, the field | COMMENT |
| LOW | extension/observer/ecsobserver/internal/errctx/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/observer/ecsobserver/internal/errctx/value.go | 21 | // | COMMENT |
| LOW | extension/observer/ecsobserver/internal/ecsmock/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/observer/cfgardenobserver/extension.go | 261 | // "index": 0, | COMMENT |
| LOW | extension/observer/endpointswatcher/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/awsproxy/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | …gextension/internal/apploadbalancerlog/armor_parser.go | 41 | // Extended attributes | COMMENT |
| LOW | …ing/awscloudwatchmetricstreamsencodingextension/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | …atchmetricstreamsencodingextension/json_unmarshaler.go | 201 | Namespace string `json:"namespace"` | COMMENT |
| LOW | extension/encoding/awslogsencodingextension/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | …on/internal/unmarshaler/subscription-filter/routing.go | 121 | COMMENT | |
| LOW | …sion/internal/unmarshaler/subscription-filter/match.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | …odingextension/internal/unmarshaler/traces/category.go | 21 | // Timestamp ("time"), TraceId ("OperationId") and SpanId ("Id") | COMMENT |
| LOW | …ncodingextension/internal/unmarshaler/logs/category.go | 61 | // from `correlationId` field in Azure Log Record | COMMENT |
| LOW | …ncodingextension/internal/unmarshaler/logs/category.go | 201 | // responsible for calling the appropriate identity parser in its own | COMMENT |
| LOW | …dingextension/internal/unmarshaler/logs/unmarshaler.go | 261 | COMMENT | |
| LOW | extension/storage/filestorage/config.go | 41 | type CompactionConfig struct { | COMMENT |
| LOW | extension/storage/storagetest/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/opampextension/config.go | 41 | COMMENT | |
| LOW | extension/sdnotifyextension/doc.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/sdnotifyextension/doc.go | 21 | // If the NOTIFY_SOCKET environment variable is not set (i.e. the collector | COMMENT |
| LOW | extension/sdnotifyextension/integration_test.go | 81 | KeepImage: true, | COMMENT |
| LOW | extension/dbauth/dbauth.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| LOW | extension/dbauth/dbauth.go | 21 | COMMENT | |
| LOW | extension/dbauth/dbauth.go | 41 | // provider owns refresh-before-expiry, so consumers need not act on it, but it | COMMENT |
| LOW | extension/dbauth/dbauth.go | 61 | // Username is the consumer's configured username. A provider may use it as a | COMMENT |
| LOW | extension/dbauth/awsiamdbauthextension/config.go | 1 | // Copyright The OpenTelemetry Authors | COMMENT |
| 691 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | receiver/otelarrowreceiver/otelarrow.go | 129 | if r.cfg.Protocols.GRPC.Auth.HasValue() { | CODE |
| CRITICAL | receiver/otelarrowreceiver/otelarrow.go | 130 | authServer, err = r.cfg.Protocols.GRPC.Auth.Get().GetServerAuthenticator(ctx, host.GetExtensions()) | CODE |
| CRITICAL | receiver/lokireceiver/loki.go | 144 | listener, err := r.conf.Protocols.GRPC.NetAddr.Listen(ctx) | CODE |
| CRITICAL | …eiver/testdata/apiresponses/stages_stats_response.json | 52 | "details": "org.apache.spark.sql.streaming.DataStreamWriter.start(DataStreamWriter.scala:249)\njava.base/jdk.interna | CODE |
| CRITICAL | …eiver/testdata/apiresponses/stages_stats_response.json | 134 | "details": "org.apache.spark.sql.streaming.DataStreamWriter.start(DataStreamWriter.scala:249)\njava.base/jdk.interna | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 30 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 107 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 580 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 608 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 627 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 661 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL⚡ | …rter/awsxrayexporter/internal/translator/cause_test.go | 695 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL⚡ | …rter/awsxrayexporter/internal/translator/cause_test.go | 699 | at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) | CODE |
| CRITICAL⚡ | …rter/awsxrayexporter/internal/translator/cause_test.go | 700 | at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java)` | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 737 | at io.opentelemetry.sdk.trace.RecordEventsReadableSpanTest.recordException(RecordEventsReadableSpanTest.java:626) | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 751 | at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) | CODE |
| CRITICAL | …rter/awsxrayexporter/internal/translator/cause_test.go | 752 | at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java) | CODE |
| CRITICAL | exporter/coralogixexporter/traces_client_test.go | 96 | _, ok := exp.config.Traces.ClientConfig.Headers.Get("Authorization") | CODE |
| CRITICAL | exporter/coralogixexporter/metrics_client_test.go | 94 | _, ok := exp.config.Metrics.ClientConfig.Headers.Get("Authorization") | CODE |
| CRITICAL | exporter/coralogixexporter/logs_client_test.go | 94 | _, ok := exp.config.Logs.ClientConfig.Headers.Get("Authorization") | CODE |
| CRITICAL | exporter/azuremonitorexporter/config.go | 105 | if err := c.TelemetryMappings.Traces.HTTP.Success.Validate(); err != nil { | CODE |
| CRITICAL | exporter/datadogexporter/metrics_exporter.go | 161 | resp, err := exp.metricsAPI.Client.Cfg.HTTPClient.Do(req) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | testbed/tests/k8sattributes_processor_test.go | 28 | // ── Test coverage reference ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | processor/isolationforestprocessor/README.md | 98 | # ─── core algorithm parameters ──────────────────────────────── | COMMENT |
| MEDIUM⚡ | processor/isolationforestprocessor/README.md | 108 | # ─── where to write results on each data point ─────────────── | COMMENT |
| MEDIUM⚡ | processor/isolationforestprocessor/README.md | 112 | # ─── which numeric features the model should look at ───────── | COMMENT |
| MEDIUM⚡ | processor/isolationforestprocessor/README.md | 118 | # ─── performance guard-rails (optional) ────────────────────── | COMMENT |
| MEDIUM | …iver/sqlserverreceiver/testdata/azure-auth-config.yaml | 7 | # ------------- | COMMENT |
| MEDIUM | …iver/sqlserverreceiver/testdata/azure-auth-config.yaml | 26 | # --------------- | COMMENT |
| MEDIUM | .github/workflows/scripts/run-checks-shard.sh | 7 | # ====================================================================================== | COMMENT |
| MEDIUM | .github/workflows/scripts/run-checks-shard.sh | 33 | # ====================================================================================== | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 34 | # ====================================================================================== | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 44 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 46 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 98 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 100 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 141 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 143 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 151 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/scripts/compute-ci-scope.sh | 153 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/workflows/scripts/compute-ci-scope.sh | 7 | # ====================================================================================== | COMMENT |
| MEDIUM | .github/workflows/scripts/compute-ci-scope.sh | 74 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/workflows/scripts/compute-ci-scope.sh | 76 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/workflows/scripts/compute-ci-scope.sh | 113 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/workflows/scripts/compute-ci-scope.sh | 115 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/workflows/scripts/compute-ci-scope.sh | 231 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/workflows/scripts/compute-ci-scope.sh | 233 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | pkg/stanza/fileconsumer/internal/archive/archive.go | 123 | // Archiving: ┌─────────────────────on-disk archive─────────────────────────┐ | COMMENT |
| MEDIUM⚡ | pkg/stanza/fileconsumer/internal/archive/archive.go | 124 | // | ┌───┐ ┌───┐ ┌──────────────────┐ | | COMMENT |
| MEDIUM⚡ | pkg/stanza/fileconsumer/internal/archive/archive.go | 126 | // | ▲ └───┘ └───┘ └──────────────────┘ | | COMMENT |
| MEDIUM⚡ | pkg/stanza/fileconsumer/internal/archive/archive.go | 129 | // └──────│──────────────────────────────────────────────────────┘ | COMMENT |
| MEDIUM⚡ | pkg/stanza/adapter/frompdataconverter.go | 25 | // ┌─────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | pkg/stanza/adapter/frompdataconverter.go | 27 | // ┌─────────┤ Ingests plog.Logs, splits up │ | COMMENT |
| MEDIUM⚡ | pkg/stanza/adapter/frompdataconverter.go | 29 | // │ └─────────────────────────────────┘ | COMMENT |
| MEDIUM⚡ | pkg/stanza/adapter/frompdataconverter.go | 31 | // │ ┌───────────────────────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | pkg/stanza/adapter/frompdataconverter.go | 33 | // │ │ ┌─────────────────────────────────────────────────┴─┐ | COMMENT |
| MEDIUM⚡ | pkg/stanza/adapter/frompdataconverter.go | 35 | // │ │ │ ┌─────────────────────────────────────────────────┴─┐ | COMMENT |
| MEDIUM⚡ | pkg/stanza/adapter/frompdataconverter.go | 40 | // └───────────────────────────────────────────────────┘ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/opampsupervisor/specification/README.md | 199 | # NOTE: This functionality is not yet fully implemented. | COMMENT |
| LOW | cmd/opampsupervisor/supervisor/supervisor_test.go | 2346 | // Step 1: Agent reports effective config with multiple named files. | COMMENT |
| LOW⚡ | cmd/opampsupervisor/supervisor/supervisor_test.go | 2361 | // Step 2: Supervisor builds the effective config message for the | COMMENT |
| LOW⚡ | cmd/opampsupervisor/supervisor/supervisor_test.go | 2366 | // Step 3: Verify every key the agent reported is preserved in the | COMMENT |
| LOW⚡ | extension/datadogextension/integration_test.go | 281 | // Step 4: Test that the components work together | COMMENT |
| LOW⚡ | extension/datadogextension/integration_test.go | 287 | // Step 5: Simulate sending payload (in a real scenario, this would use serializer.SendEvents or similar) | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 222 | // Step 1: Create a full OtelCollectorPayload with realistic data | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 236 | // Step 2: Create mock Datadog agent components | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 269 | // Step 3: Verify we can marshal the payload (simulating serialization) | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 539 | // Step 1: Create test configuration and payload | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 589 | // Step 2: Create mock Datadog agent components configured to use mock backend | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 619 | // Step 3: Create HTTP server configuration | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 630 | // Step 4: Create and test the HTTP server | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 658 | // Step 5: Test SendPayload functionality | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 677 | // Step 6: Test HTTP endpoint functionality | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 697 | // Step 7: Test error scenarios | COMMENT |
| LOW⚡ | processor/spanpruningprocessor/processor.go | 310 | // Step 1: plan the groups that would aggregate. | COMMENT |
| LOW⚡ | processor/spanpruningprocessor/processor.go | 316 | // Step 2: detect outliers at every level and sample exemplars at the top of | COMMENT |
| LOW⚡ | processor/spanpruningprocessor/processor.go | 321 | // Step 3: aggregate. planCandidateGroups returns groups bottom-up (leaves | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 594 | // Step 1: add pod with the label. | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 599 | // Step 2: update removes the label — stale delete is queued with the old *Pod pointer. | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 606 | // Step 3: update restores the label — a new *Pod is written to c.Pods[labelID]. | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 613 | // Step 4: the delete loop sees the pointer mismatch and skips the delete. | COMMENT |
| LOW | receiver/k8sclusterreceiver/internal/pod/pods.go | 38 | // IMPORTANT: Make sure to update this function before using new pod fields. | COMMENT |
| LOW | …er/k8sclusterreceiver/internal/daemonset/daemonsets.go | 16 | // IMPORTANT: Make sure to update this function before using new daemonset fields. | COMMENT |
| LOW | …8sclusterreceiver/internal/statefulset/statefulsets.go | 22 | // IMPORTANT: Make sure to update this function before using new statefulset fields. | COMMENT |
| LOW | …nternal/persistentvolumeclaim/persistentvolumeclaim.go | 24 | // IMPORTANT: Make sure to update this function before using new PersistentVolumeClaim fields. | COMMENT |
| LOW | …receiver/internal/persistentvolume/persistentvolume.go | 23 | // IMPORTANT: Make sure to update this function before using new PersistentVolume fields. | COMMENT |
| LOW | …/k8sclusterreceiver/internal/deployment/deployments.go | 17 | // IMPORTANT: Make sure to update this function before using new deployment fields. | COMMENT |
| LOW | receiver/k8sclusterreceiver/internal/node/nodes.go | 30 | // IMPORTANT: Make sure to update this function before using new node fields. | COMMENT |
| LOW | receiver/k8sclusterreceiver/internal/jobs/jobs.go | 34 | // IMPORTANT: Make sure to update this function before using new job fields. | COMMENT |
| LOW | receiver/k8sclusterreceiver/internal/service/service.go | 26 | // IMPORTANT: Make sure to update this function before using new service fields. | COMMENT |
| LOW | …/k8sclusterreceiver/internal/replicaset/replicasets.go | 16 | // IMPORTANT: Make sure to update this function before using new replicaset fields. | COMMENT |
| LOW | …lusterreceiver/internal/endpointslice/endpointslice.go | 13 | // IMPORTANT: Make sure to update this function before using new endpointslice fields. | COMMENT |
| LOW⚡ | receiver/yanggrpcreceiver/grpc_service.go | 75 | // Step 1: Initialize context bag with the node ID. | COMMENT |
| LOW⚡ | receiver/yanggrpcreceiver/grpc_service.go | 80 | // Step 2: Extract identifying keys only from the "keys" branch. | COMMENT |
| LOW⚡ | receiver/yanggrpcreceiver/grpc_service.go | 84 | // Step 3: Walk the "content" branch only to emit measurements. | COMMENT |
| LOW⚡ | …orter/loadbalancingexporter/resolver_k8s_churn_test.go | 104 | // Step 1: new pods scheduled; pod b is in the slice but has no hostname yet. | COMMENT |
| LOW⚡ | …orter/loadbalancingexporter/resolver_k8s_churn_test.go | 111 | // Step 2: pod b's hostname is now populated. | COMMENT |
| LOW | exporter/coralogixexporter/config.go | 336 | // NOTE: This function modifies *Config and *TransportConfig passed as arguments. | COMMENT |
| LOW | exporter/coralogixexporter/config.go | 364 | // NOTE: This function modifies *Config and *TransportConfig passed as arguments. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …scloudwatchmetricstreamsencodingextension/extension.go | 68 | // Implementations must utilize derived buffered readers as is. | COMMENT |
| MEDIUM | …tension/encoding/awslogsencodingextension/extension.go | 184 | // Implementations must utilize derived buffered readers as is. | COMMENT |
| MEDIUM | …sion/internal/unmarshaler/cloudtraillog/unmarshaler.go | 90 | // There is no builtin CloudTrailRecord we can leverage like in S3 | COMMENT |
| MEDIUM | processor/spanpruningprocessor/config.go | 27 | // MAD is more robust to extreme outliers than IQR. | COMMENT |
| MEDIUM | processor/spanpruningprocessor/outlier.go | 163 | // MAD is more robust to extreme outliers than IQR. | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 170 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 253 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 339 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 424 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 543 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 637 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 753 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 839 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 925 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 1011 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/scraper.go | 1097 | // Because we have to utilize network resources for each KPI we should check that each metrics | COMMENT |
| MEDIUM | receiver/splunkenterprisereceiver/metadata.yaml | 7 | It is designed to leverage several different data sources to gather these metrics including the [introspection api end | CODE |
| MEDIUM | receiver/githubreceiver/model.go | 79 | // it necessary to leverage template attributes. One key thing to note is | COMMENT |
| MEDIUM | receiver/huaweicloudcesreceiver/receiver.go | 84 | // The current implementation lacks robust error handling, especially for | COMMENT |
| MEDIUM | pkg/translator/faro/traces_to_faro.go | 6 | // the Faro receiver and Faro exporter components to ensure seamless data flow | COMMENT |
| MEDIUM | pkg/xk8stest/k8s_telemetrygen.go | 57 | // fallback — uncommon but robust | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/opampsupervisor/supervisor/supervisor_test.go | 2346 | // Step 1: Agent reports effective config with multiple named files. | COMMENT |
| LOW⚡ | cmd/opampsupervisor/supervisor/supervisor_test.go | 2361 | // Step 2: Supervisor builds the effective config message for the | COMMENT |
| LOW⚡ | cmd/opampsupervisor/supervisor/supervisor_test.go | 2366 | // Step 3: Verify every key the agent reported is preserved in the | COMMENT |
| LOW⚡ | extension/datadogextension/integration_test.go | 281 | // Step 4: Test that the components work together | COMMENT |
| LOW⚡ | extension/datadogextension/integration_test.go | 287 | // Step 5: Simulate sending payload (in a real scenario, this would use serializer.SendEvents or similar) | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 222 | // Step 1: Create a full OtelCollectorPayload with realistic data | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 236 | // Step 2: Create mock Datadog agent components | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 269 | // Step 3: Verify we can marshal the payload (simulating serialization) | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 539 | // Step 1: Create test configuration and payload | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 589 | // Step 2: Create mock Datadog agent components configured to use mock backend | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 619 | // Step 3: Create HTTP server configuration | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 630 | // Step 4: Create and test the HTTP server | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 658 | // Step 5: Test SendPayload functionality | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 677 | // Step 6: Test HTTP endpoint functionality | COMMENT |
| LOW | extension/datadogextension/integration_test.go | 697 | // Step 7: Test error scenarios | COMMENT |
| LOW⚡ | processor/spanpruningprocessor/processor.go | 310 | // Step 1: plan the groups that would aggregate. | COMMENT |
| LOW⚡ | processor/spanpruningprocessor/processor.go | 316 | // Step 2: detect outliers at every level and sample exemplars at the top of | COMMENT |
| LOW⚡ | processor/spanpruningprocessor/processor.go | 321 | // Step 3: aggregate. planCandidateGroups returns groups bottom-up (leaves | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 594 | // Step 1: add pod with the label. | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 599 | // Step 2: update removes the label — stale delete is queued with the old *Pod pointer. | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 606 | // Step 3: update restores the label — a new *Pod is written to c.Pods[labelID]. | COMMENT |
| LOW⚡ | …or/k8sattributesprocessor/internal/kube/client_test.go | 613 | // Step 4: the delete loop sees the pointer mismatch and skips the delete. | COMMENT |
| LOW | receiver/gitlabreceiver/traces_event_handling.go | 400 | // We need to check if the commit timestamp is not nil, otherwise we might have a nil pointer dereference when calling | COMMENT |
| LOW⚡ | receiver/yanggrpcreceiver/grpc_service.go | 75 | // Step 1: Initialize context bag with the node ID. | COMMENT |
| LOW⚡ | receiver/yanggrpcreceiver/grpc_service.go | 80 | // Step 2: Extract identifying keys only from the "keys" branch. | COMMENT |
| LOW⚡ | receiver/yanggrpcreceiver/grpc_service.go | 84 | // Step 3: Walk the "content" branch only to emit measurements. | COMMENT |
| LOW⚡ | …orter/loadbalancingexporter/resolver_k8s_churn_test.go | 104 | // Step 1: new pods scheduled; pod b is in the slice but has no hostname yet. | COMMENT |
| LOW⚡ | …orter/loadbalancingexporter/resolver_k8s_churn_test.go | 111 | // Step 2: pod b's hostname is now populated. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ntryencodingextension/internal/auditlog/parser_test.go | 301 | Principal: "user@example.com", | CODE |
| LOW | …ntryencodingextension/internal/auditlog/parser_test.go | 321 | gcpAuditRequestAuthPrincipal: "user@example.com", | CODE |
| LOW⚡ | …ler/logs/testdata/activitylogs/administrative-log.json | 41 | "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress": "user@example.com", | CODE |
| LOW⚡ | …ler/logs/testdata/activitylogs/administrative-log.json | 48 | "name": "John Doe", | CODE |
| LOW⚡ | …ler/logs/testdata/activitylogs/administrative-log.json | 56 | "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "user@example.com", | CODE |
| LOW⚡ | …ler/logs/testdata/activitylogs/administrative-log.json | 114 | "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress": "user@example.com", | CODE |
| LOW⚡ | …ler/logs/testdata/activitylogs/administrative-log.json | 121 | "name": "John Doe", | CODE |
| LOW⚡ | …ler/logs/testdata/activitylogs/administrative-log.json | 129 | "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "user@example.com", | CODE |
| LOW | …unmarshaler/logs/testdata/activitylogs/policy-log.json | 48 | "name": "John Doe", | CODE |
| LOW | processor/attributesprocessor/factory_test.go | 86 | {Key: "fake_key", Action: attraction.INSERT, Value: "100"}, | CODE |
| LOW | processor/attributesprocessor/factory_test.go | 94 | {Key: "fake_key", Action: attraction.UPSERT}, | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 51 | "name": pcommon.NewValueStr("placeholder"), | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 118 | "name": pcommon.NewValueStr("placeholder"), | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 162 | assert.Equal(t, "placeholder", value.Str()) | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 178 | "name": pcommon.NewValueStr("placeholder"), | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 1534 | "name": pcommon.NewValueStr("placeholder"), | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 1597 | "name": pcommon.NewValueStr("placeholder"), | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 2236 | "name": pcommon.NewValueStr("placeholder"), | CODE |
| LOW | processor/redactionprocessor/processor_test.go | 2525 | sqlSpan.Attributes().PutStr("db.statement", "SELECT email FROM users WHERE email = 'foo@bar.com'") | CODE |
| LOW | processor/redactionprocessor/README.md | 267 | | `email` | `"user@example.com"` | | CODE |
| LOW | processor/redactionprocessor/README.md | 276 | | `email` | `"user@example.com"` | | CODE |
| LOW | internal/coreinternal/parseutils/parser_test.go | 313 | input: `name="John Doe" age=30 city="New York"`, | CODE |
| LOW | receiver/postgresqlreceiver/credentials_test.go | 147 | component.MustNewID("aws_iam_dbauth"): fakeCredExtension{secret: "fake-token"}, | CODE |
| LOW | receiver/postgresqlreceiver/credentials_test.go | 312 | id: fakeCredExtension{secret: "fake-token"}, | CODE |
| LOW | …eventsreceiver/testdata/e2e/expected/watch_events.yaml | 42 | stringValue: "placeholder" | CODE |
| LOW | …eventsreceiver/testdata/e2e/expected/watch_events.yaml | 48 | stringValue: "placeholder" | CODE |
| LOW | receiver/mysqlreceiver/credentials_test.go | 165 | component.MustNewID("aws_iam_db_auth"): fakeCredExtension{secret: "fake-token"}, | CODE |
| LOW | receiver/mysqlreceiver/credentials_test.go | 289 | id: fakeCredExtension{secret: "fake-token"}, | CODE |
| LOW | receiver/httpcheckreceiver/README.md | 128 | body: '{"name": "John Doe", "email": "john@example.com"}' | CODE |
| LOW | receiver/gitlabreceiver/traces_receiver_test.go | 29 | validPipelineWebhookEvent = `{"object_attributes":{"id":1,"status":"success","created_at":"2022-01-0 | CODE |
| LOW | pkg/stanza/operator/parser/jsonarray/parser_test.go | 211 | Body: []any{"stanza", "Evergreen,49508", int64(1), "555-5555", "agent"}, | CODE |
| LOW | pkg/stanza/operator/parser/csv/parser_test.go | 220 | "phone": "555-5555", | CODE |
| LOW | pkg/stanza/operator/parser/csv/parser_test.go | 473 | "phone": "555-5555", | CODE |
| LOW | pkg/stanza/operator/parser/csv/parser_test.go | 499 | "phone": "555-5555", | CODE |
| LOW | pkg/stanza/operator/parser/csv/parser_test.go | 524 | "phone": "555-5555", | CODE |
| LOW | pkg/stanza/operator/parser/csv/parser_test.go | 549 | "phone": "555-5555", | CODE |
| LOW | …/testdata/cornercases/identity_as_string_expected.yaml | 35 | "identity": "John Doe" | CODE |
| LOW | …azurelogs/testdata/cornercases/identity_as_string.json | 8 | "identity": "John Doe" | CODE |
| LOW⚡ | …nslator/azurelogs/testdata/administrative/valid_1.json | 41 | "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress": "user@example.com", | CODE |
| LOW⚡ | …nslator/azurelogs/testdata/administrative/valid_1.json | 48 | "name": "John Doe", | CODE |
| LOW⚡ | …nslator/azurelogs/testdata/administrative/valid_1.json | 56 | "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "user@example.com", | CODE |
| LOW | pkg/translator/azurelogs/testdata/policy/valid_1.json | 48 | "name": "John Doe", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | exporter/datasetexporter/README.md | 226 | api_key: your_api_key | CODE |
| HIGH | exporter/datasetexporter/README.md | 249 | api_key: your_api_key | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | processor/lookupprocessor/lookupsource/doc.go | 9 | // # Creating a Custom Source | COMMENT |
| MEDIUM | internal/buildscripts/gen-certs.sh | 96 | # Creating the client and server certificates. | COMMENT |
| MEDIUM | exporter/datadogexporter/examples/collector.yaml | 196 | ## Create a new API key here: https://app.datadoghq.com/account/settings | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/scripts/generate-pr-from-changelog.sh | 61 | # Read file content from the PR head commit via git show | COMMENT |
| LOW | …ub/workflows/scripts/check-collector-module-version.sh | 17 | # Check if GNU sed is installed | COMMENT |
| LOW⚡ | .github/workflows/scripts/compute-ci-scope.sh | 99 | # Check if script should keep running | COMMENT |
| LOW⚡ | .github/workflows/scripts/compute-ci-scope.sh | 142 | # Check if there are changes to infrastructure files | COMMENT |
| LOW⚡ | .github/workflows/scripts/compute-ci-scope.sh | 53 | export GITHUB_OUTPUT="/dev/stdout" # Print results to console | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | processor/spanprocessor/span_test.go | 73 | // TODO: Add test for "nil" Span. This needs support from data slices to allow to construct that. | COMMENT |
| LOW | processor/spanprocessor/span_test.go | 118 | // TODO: Add test for "nil" Span. This needs support from data slices to allow to construct that. | COMMENT |
| LOW | …/mongodbatlasreceiver/internal/mongodb_atlas_client.go | 195 | // TODO: Add error to a metric | COMMENT |
| LOW | receiver/prometheusreceiver/internal/transaction.go | 407 | // TODO: implement this func | COMMENT |
| LOW | receiver/prometheusreceiver/internal/transaction.go | 629 | // TODO: implement this func | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …transformprocessor/metrics_transform_processor_otlp.go | 222 | // and the key is not found then move forward. In this approach we can make sure certain key is not present which is a | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …nerreceiver/internal/metadata/metricsdatapoint_test.go | 135 | // We are checking that function HideLockStatsRowrangestartkeyPII() does not panic for invalid label values. | COMMENT |
| LOW | .github/workflows/scripts/generate-new-contributors.js | 76 | function generateNewContributorText(newContributors) { | CODE |
| LOW | .github/workflows/scripts/generate-weekly-report.js | 82 | function addJSONDataIfEnoughChartsAreLeftInTheIssue(report, issuesData, byStatus, seekingNewCodeOwnerCounts) { | CODE |
| LOW | .github/workflows/scripts/generate-weekly-report.js | 237 | function generateComponentsLookingForOwnersReportSection(lookingForOwners) { | CODE |
| LOW | .github/workflows/scripts/generate-weekly-report.js | 255 | function addChangesFromPreviousWeek(li, current, previous) { | CODE |
| LOW | …thub/workflows/scripts/generate-codeowners-activity.js | 179 | async function getReviewAndRequestedLogins(octokit, owner, repo, prNumber) { | CODE |
| LOW | …thub/workflows/scripts/generate-codeowners-activity.js | 323 | function formatComponentSummaryTable(byCodeOwnerAndComponent, componentPrStats) { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | exporter/otelarrowexporter/otelarrow.go | 304 | // We are throttled. Wait before retrying as requested by the server. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | extension/opampextension/README.md | 91 | ## Using the AcceptsRestartCommand capability to orchestrate collector config updates | COMMENT |
| MEDIUM | …ainormalizerprocessor/internal/openllmetry/mappings.go | 53 | // Traceloop workflow/entity (agentic) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …slogexporter/examples/config_with_syslog_receiver.yaml | 38 | # make sure to configure and add a `file_storage` extension in `service.extensions`. | COMMENT |
| LOW | …examples/config_with_syslog_receiver_network_unix.yaml | 33 | # make sure to configure and add a `file_storage` extension in `service.extensions`. | COMMENT |
| LOW | …logexporter/examples/config_with_filelog_receiver.yaml | 38 | # make sure to configure and add a `file_storage` extension in `service.extensions`. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/scripts/run-checks-shard.sh | 14 | # Usage: | COMMENT |
| LOW | .github/workflows/scripts/find-no-race-test-packages.sh | 10 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ver/testdata/integration/sparkprograms/long_running.py | 51 | CODE |