Skip to content

feat(byoo-otel-collector): add debug and log chunking flags#194

Open
kristinapathak wants to merge 4 commits into
mainfrom
ci/byoo-otel-config-knobs
Open

feat(byoo-otel-collector): add debug and log chunking flags#194
kristinapathak wants to merge 4 commits into
mainfrom
ci/byoo-otel-config-knobs

Conversation

@kristinapathak

@kristinapathak kristinapathak commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

TL;DR

Add BYOO OTel collector feature flags for common debug and log chunking cases, while preserving advanced collector overrides for settings such as exporter timeout.

Additional Details (optional for docs, build, test, refactor, ci, chore, style, and revert PRs)

  • Adds agent.byooLogChunking.enabled, which injects BYOO_LOG_CHUNKING_ENABLED=true. The collector enables logchunk/byoo and defaults max_body_bytes to 262144 and dry_run to false when those fields are unset.
  • byooLogChunking.enabled does not enable exporterhelper byte batching by itself. Byte batching is configured through advanced agent.byooOtelCollector.exporterHelper.sendingQueue.batch overrides.
  • Restores agent.byooOtelCollector advanced rendering overrides, encoded into BYOO_OTEL_COLLECTOR_CONFIG_B64, for exporter helper, memory limiter, batch, and log batch settings.
  • Adds agent.byooDebugMode.enabled, which injects BYOO_DEBUG_MODE=true into the BYOO OTel collector and renders collector telemetry logs at debug/development mode plus debug exporter fanout.
  • Keeps the common operator-facing surface on the existing agentConfig.mergeConfig path and only adds commented chart examples for the narrow flags and exporter timeout override.
  • Replays feat(nvca): wire BYOO metric subset config #326's generalized BYOO env-var helper and SRE metrics config naming on top of current main, then applies this PR's debug/log chunking changes.

For the Reviewer

Start with src/libraries/go/lib/pkg/types/nvca/config/types.go for the NVCA config surface, then src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig.go, collector_config.go, and render.go for collector-side defaulting and advanced override application.

For QA (optional for docs, build, test, refactor, ci, chore, style, and revert PRs)

  • git diff --check origin/main..HEAD
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path ./tools/ci/check-go-codegen src/libraries/go/lib --install k8s.io/code-generator/cmd/deepcopy-gen@v0.34.2 --command 'make codegen-update'
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path go test ./pkg/types/nvca/config
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path go test ./internal/otelconfig
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path go test -vet=off ./internal/util/k8sutil -run TestAddBYOOEnvVarsToPodSpecMutatesOnlyBYOOCollectorContainer -ldflags '-X github.com/NVIDIA/k8s-dra-driver-gpu/internal/info.version=v25.8.0'
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path go test -vet=off ./pkg/webhook -run TestMiniserviceMutatePodSpec_BYOOOTelCollectorEnvVarsOnlyCollector -ldflags '-X github.com/NVIDIA/k8s-dra-driver-gpu/internal/info.version=v25.8.0'
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path go test -vet=off ./pkg/operator/reconcile -run TestEncodeAgentConfig_MergesBYOOConfig -ldflags '-X github.com/NVIDIA/k8s-dra-driver-gpu/internal/info.version=v25.8.0'
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path go test -vet=off ./pkg/nvca -run 'TestCLI|TestNewCobraCommand|Test.*Config' -ldflags '-X github.com/NVIDIA/k8s-dra-driver-gpu/internal/info.version=v25.8.0'
  • GOCACHE=/private/tmp/nvcf-pr194-go-cache GOPATH=/private/tmp/nvcf-pr194-go-path go test -vet=off ./internal/miniservice -run TestReconcile_Function -ldflags '-X github.com/NVIDIA/k8s-dra-driver-gpu/internal/info.version=v25.8.0'

Issues

NO-REF

Checklist

  • I am familiar with the Contributing Guidelines.
  • I have signed off my commits for Developer Certificate of Origin (DCO) compliance.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@kristinapathak
kristinapathak requested review from a team and along-2017 as code owners July 16, 2026 17:00
@kristinapathak

Copy link
Copy Markdown
Contributor Author

CI note after migration:

  • bazel (umbrella-phase1) fails before reaching this patch: current main has .bazelrc referencing tools/bazel/downloader.cfg, but that file is absent in the GitHub checkout. The latest main Bazel workflow at base SHA 44dfc09e66d4e4826800c4ef09160933d9eaa1db is also failing.
  • bazel (nvca) reaches Bazel analysis, then fails while querying the remote cache/execution endpoint: Failed to query remote execution capabilities: General OpenSslEngine problem.
  • Local focused validation on the migrated branch passed: git diff --check, BYOO go test ./internal/otelconfig, go-lib go test ./pkg/types/nvca/config, and focused NVCA reconcile/miniservice/pkg checks listed in the PR body.

@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

BYOO configuration now supports explicit log chunking, debug mode, SRE metrics, and OpenTelemetry Collector overrides. NVCA aggregates and injects these settings into collector containers, while rendering resolves chunking defaults, applies overrides, and configures debug pipelines.

Changes

BYOO observability configuration

Layer / File(s) Summary
Configuration model and environment aggregation
src/libraries/go/lib/pkg/types/nvca/config/..., src/compute-plane-services/nvca/pkg/...
BYOO configuration types, environment aggregation, serialization, completion, CLI expectations, and related tests are updated.
OpenTelemetry collector rendering
src/compute-plane-services/byoo-otel-collector/...
Log chunking defaults and exporter batching are resolved conditionally; collector override structures apply exporter, processor, telemetry, and debug settings.
Collector-only environment propagation
src/compute-plane-services/nvca/internal/..., src/compute-plane-services/nvca/pkg/..., deploy/helm/..., docs/...
Install, task, translation, webhook, and pod mutation paths target the BYOO collector, with expanded configuration examples and propagation tests.

Estimated code review effort: 4 (Complex) | ~45 minutes

Sequence Diagram(s)

sequenceDiagram
  participant AgentConfig
  participant NVCA
  participant BYOOCollector
  AgentConfig->>NVCA: BYOOOTelCollectorEnvVars()
  NVCA->>BYOOCollector: inject chunking, debug, SRE metrics, and collector override variables
  BYOOCollector->>BYOOCollector: render collector configuration
Loading

Possibly related PRs

  • NVIDIA/nvcf#266: Implements BYOO SRE metrics plumbing connected to these configuration and environment variables.
  • NVIDIA/nvcf#326: Also updates BYOO collector environment propagation and container injection paths.

Suggested reviewers: along-2017

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 5.36% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: adding BYOO OTel collector debug and log chunking flags.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/byoo-otel-config-knobs

Comment @coderabbitai help to get the list of available commands.

@kristinapathak kristinapathak changed the title feat(byoo-otel-collector): expose collector config knobs feat(byoo-otel-collector): add debug and log chunking flags Jul 21, 2026
@kristinapathak
kristinapathak force-pushed the ci/byoo-otel-config-knobs branch from a11fd25 to 810f6bb Compare July 21, 2026 20:57
@kristinapathak
kristinapathak force-pushed the ci/byoo-otel-config-knobs branch from 810f6bb to f78d458 Compare July 21, 2026 21:24
@github-actions

Copy link
Copy Markdown

@kristinapathak
kristinapathak force-pushed the ci/byoo-otel-config-knobs branch 2 times, most recently from 9e1019a to 01fb8b6 Compare July 21, 2026 21:38

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (3)
src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render.go (1)

615-670: 📐 Maintainability & Code Quality | 🔵 Trivial

Debug-exporter wiring duplicated with collector_config.go.

applyDebugMode's block that ensures a "debug" exporter and appends it to every pipeline (lines 627-636) is duplicated almost verbatim in applyDebugExporterConfig in collector_config.go (lines 410-419). Extract a shared helper (e.g. ensureDebugExporter(otelConfig)) to avoid drift between the two debug-enabling paths (TemplateConfig.DebugMode vs OTelCollectorConfig.DebugExporter.Enabled).

See consolidated comment.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render.go`
around lines 615 - 670, The debug exporter wiring is duplicated between
applyDebugMode and applyDebugExporterConfig, risking inconsistent behavior.
Extract the shared exporter initialization and pipeline-appending logic into an
ensureDebugExporter helper, then call it from both debug-enabling paths while
keeping their existing log-level and configuration responsibilities unchanged.
src/compute-plane-services/byoo-otel-collector/internal/otelconfig/collector_config.go (2)

392-420: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

applyDebugExporterConfig duplicates applyDebugMode's debug-exporter logic.
See consolidated comment.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@src/compute-plane-services/byoo-otel-collector/internal/otelconfig/collector_config.go`
around lines 392 - 420, The debug exporter setup in applyDebugExporterConfig
duplicates the logic already handled by applyDebugMode. Consolidate the behavior
by reusing applyDebugMode and remove the duplicated exporter initialization and
pipeline-update logic from applyDebugExporterConfig, preserving the existing
enabled guard.

325-390: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

applyBatchConfig and applyLogBatchConfig duplicate the same field-setting logic.

Both functions set timeout, send_batch_size, send_batch_max_size, metadata_keys, and metadata_cardinality_limit on a processor map with identical logic (lines 330-344 vs 358-372). Consider extracting a shared (c BatchConfig) applyTo(out map[string]interface{}) helper (mirroring the pattern already used for RetryOnFailureConfig/SendingQueueConfig/SendingQueueBatchConfig), and have applyLogBatchConfig call it after resolving/cloning the base processor map. This avoids the two copies drifting if a new BatchConfig field is added later.

♻️ Suggested consolidation
+func (c BatchConfig) applyTo(out map[string]interface{}) {
+	if c.Timeout != "" {
+		out["timeout"] = c.Timeout
+	}
+	if c.SendBatchSize != nil {
+		out["send_batch_size"] = *c.SendBatchSize
+	}
+	if c.SendBatchMaxSize != nil {
+		out["send_batch_max_size"] = *c.SendBatchMaxSize
+	}
+	if len(c.MetadataKeys) > 0 {
+		out["metadata_keys"] = c.MetadataKeys
+	}
+	if c.MetadataCardinalityLimit != nil {
+		out["metadata_cardinality_limit"] = *c.MetadataCardinalityLimit
+	}
+}
+
 func applyBatchConfig(otelConfig *OpenTelemetryConfig, processorID string, cfg BatchConfig) {
 	if cfg.IsZero() {
 		return
 	}
 	processor := mapFromInterface(otelConfig.Processors[processorID])
-	if cfg.Timeout != "" {
-		processor["timeout"] = cfg.Timeout
-	}
-	if cfg.SendBatchSize != nil {
-		processor["send_batch_size"] = *cfg.SendBatchSize
-	}
-	if cfg.SendBatchMaxSize != nil {
-		processor["send_batch_max_size"] = *cfg.SendBatchMaxSize
-	}
-	if len(cfg.MetadataKeys) > 0 {
-		processor["metadata_keys"] = cfg.MetadataKeys
-	}
-	if cfg.MetadataCardinalityLimit != nil {
-		processor["metadata_cardinality_limit"] = *cfg.MetadataCardinalityLimit
-	}
+	cfg.applyTo(processor)
 	otelConfig.Processors[processorID] = processor
 }
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@src/compute-plane-services/byoo-otel-collector/internal/otelconfig/collector_config.go`
around lines 325 - 390, Extract the duplicated BatchConfig field assignments
from applyBatchConfig and applyLogBatchConfig into a BatchConfig.applyTo(out
map[string]interface{}) helper, following the existing configuration helper
pattern. Have both functions resolve their processor map as they currently do,
then call applyTo and preserve their existing processor and pipeline updates.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In
`@src/compute-plane-services/byoo-otel-collector/internal/otelconfig/collector_config.go`:
- Around line 392-420: The debug exporter setup in applyDebugExporterConfig
duplicates the logic already handled by applyDebugMode. Consolidate the behavior
by reusing applyDebugMode and remove the duplicated exporter initialization and
pipeline-update logic from applyDebugExporterConfig, preserving the existing
enabled guard.
- Around line 325-390: Extract the duplicated BatchConfig field assignments from
applyBatchConfig and applyLogBatchConfig into a BatchConfig.applyTo(out
map[string]interface{}) helper, following the existing configuration helper
pattern. Have both functions resolve their processor map as they currently do,
then call applyTo and preserve their existing processor and pipeline updates.

In
`@src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render.go`:
- Around line 615-670: The debug exporter wiring is duplicated between
applyDebugMode and applyDebugExporterConfig, risking inconsistent behavior.
Extract the shared exporter initialization and pipeline-appending logic into an
ensureDebugExporter helper, then call it from both debug-enabling paths while
keeping their existing log-level and configuration responsibilities unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: d2cf1582-1005-4361-b387-e7e624b46fe5

📥 Commits

Reviewing files that changed from the base of the PR and between f78d458 and 9e1019a.

⛔ Files ignored due to path filters (3)
  • src/compute-plane-services/nvca/vendor/github.com/NVIDIA/nvcf/src/libraries/go/lib/pkg/types/nvca/config/types.go is excluded by !**/vendor/**
  • src/compute-plane-services/nvca/vendor/github.com/NVIDIA/nvcf/src/libraries/go/lib/pkg/types/nvca/config/zz_generated.deepcopy.go is excluded by !**/vendor/**, !**/zz_generated.*
  • src/libraries/go/lib/pkg/types/nvca/config/zz_generated.deepcopy.go is excluded by !**/zz_generated.*
📒 Files selected for processing (18)
  • deploy/helm/nvca-operator/nvca-operator/values.yaml
  • src/compute-plane-services/byoo-otel-collector/README.md
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/BUILD.bazel
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/collector_config.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/embed_config.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig_test.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render_test.go
  • src/compute-plane-services/nvca/deployments/nvca-operator/values.yaml
  • src/compute-plane-services/nvca/internal/miniservice/reconcile_test.go
  • src/compute-plane-services/nvca/internal/util/k8sutil/byoo_env_vars_test.go
  • src/compute-plane-services/nvca/pkg/nvca/cli_test.go
  • src/compute-plane-services/nvca/pkg/operator/reconcile/nvcaagent_reconcile_test.go
  • src/compute-plane-services/nvca/pkg/webhook/miniservice_mutating_webhook_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/config_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/types.go
  • src/libraries/go/lib/pkg/types/nvca/config/types_test.go
🚧 Files skipped from review as they are similar to previous changes (13)
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/embed_config.go
  • src/compute-plane-services/nvca/pkg/operator/reconcile/nvcaagent_reconcile_test.go
  • src/compute-plane-services/nvca/internal/util/k8sutil/byoo_env_vars_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/types_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/config_test.go
  • src/compute-plane-services/byoo-otel-collector/README.md
  • src/compute-plane-services/nvca/pkg/nvca/cli_test.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig_test.go
  • deploy/helm/nvca-operator/nvca-operator/values.yaml
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig.go
  • src/compute-plane-services/nvca/pkg/webhook/miniservice_mutating_webhook_test.go
  • src/compute-plane-services/nvca/internal/miniservice/reconcile_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/types.go

@kristinapathak
kristinapathak force-pushed the ci/byoo-otel-config-knobs branch from 01fb8b6 to 038d7b6 Compare July 21, 2026 21:46

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@src/compute-plane-services/nvca/pkg/operator/reconcile/nvcaagent_reconcile_test.go`:
- Around line 2840-2844: Update the test containing the BYOOLogChunking
configuration to assert that the reconciled result’s
got.Agent.BYOOLogChunking.Enabled is true, alongside the existing merged-field
assertions. Keep the test setup unchanged and add only the verification needed
to catch loss of this feature flag.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 7aea0267-61a0-4ed4-adc9-ac521b0d0e06

📥 Commits

Reviewing files that changed from the base of the PR and between 9e1019a and 01fb8b6.

⛔ Files ignored due to path filters (3)
  • src/compute-plane-services/nvca/vendor/github.com/NVIDIA/nvcf/src/libraries/go/lib/pkg/types/nvca/config/types.go is excluded by !**/vendor/**
  • src/compute-plane-services/nvca/vendor/github.com/NVIDIA/nvcf/src/libraries/go/lib/pkg/types/nvca/config/zz_generated.deepcopy.go is excluded by !**/vendor/**, !**/zz_generated.*
  • src/libraries/go/lib/pkg/types/nvca/config/zz_generated.deepcopy.go is excluded by !**/zz_generated.*
📒 Files selected for processing (27)
  • deploy/helm/nvca-operator/nvca-operator/values.yaml
  • docs/ngc-managed/cluster-management/configuration.md
  • docs/user/cluster-management/configuration.md
  • src/compute-plane-services/byoo-otel-collector/README.md
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/BUILD.bazel
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/collector_config.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/embed_config.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig_test.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render_test.go
  • src/compute-plane-services/nvca/deployments/nvca-operator/values.yaml
  • src/compute-plane-services/nvca/internal/miniservice/reconcile.go
  • src/compute-plane-services/nvca/internal/miniservice/reconcile_test.go
  • src/compute-plane-services/nvca/internal/util/k8sutil/BUILD.bazel
  • src/compute-plane-services/nvca/internal/util/k8sutil/byoo_env_vars.go
  • src/compute-plane-services/nvca/internal/util/k8sutil/byoo_env_vars_test.go
  • src/compute-plane-services/nvca/pkg/nvca/cli_test.go
  • src/compute-plane-services/nvca/pkg/nvca/k8scomputebackend.go
  • src/compute-plane-services/nvca/pkg/nvca/k8scomputebackend_task_container.go
  • src/compute-plane-services/nvca/pkg/operator/reconcile/nvcaagent_reconcile_test.go
  • src/compute-plane-services/nvca/pkg/webhook/miniservice_mutating_webhook.go
  • src/compute-plane-services/nvca/pkg/webhook/miniservice_mutating_webhook_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/config_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/deepcopy_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/types.go
  • src/libraries/go/lib/pkg/types/nvca/config/types_test.go
🚧 Files skipped from review as they are similar to previous changes (23)
  • src/compute-plane-services/nvca/internal/util/k8sutil/byoo_env_vars.go
  • docs/user/cluster-management/configuration.md
  • src/compute-plane-services/nvca/internal/util/k8sutil/BUILD.bazel
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/BUILD.bazel
  • src/libraries/go/lib/pkg/types/nvca/config/deepcopy_test.go
  • src/compute-plane-services/byoo-otel-collector/README.md
  • src/compute-plane-services/nvca/pkg/nvca/k8scomputebackend_task_container.go
  • docs/ngc-managed/cluster-management/configuration.md
  • src/compute-plane-services/nvca/pkg/webhook/miniservice_mutating_webhook.go
  • deploy/helm/nvca-operator/nvca-operator/values.yaml
  • src/compute-plane-services/nvca/internal/util/k8sutil/byoo_env_vars_test.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/embed_config.go
  • src/compute-plane-services/nvca/pkg/nvca/cli_test.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/otelconfig_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/types_test.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/collector_config.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render_test.go
  • src/compute-plane-services/nvca/pkg/webhook/miniservice_mutating_webhook_test.go
  • src/compute-plane-services/byoo-otel-collector/internal/otelconfig/render.go
  • src/compute-plane-services/nvca/internal/miniservice/reconcile_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/config_test.go
  • src/libraries/go/lib/pkg/types/nvca/config/types.go

@kristinapathak
kristinapathak force-pushed the ci/byoo-otel-config-knobs branch 3 times, most recently from 557f484 to d16d4f7 Compare July 21, 2026 22:33
Add NVCA agent config for BYOO SRE metrics collector settings and pass the resulting environment variables through the existing BYOO OTel collector-only injection path. This lets Helm users configure the SRE metrics pipeline through agentConfig.mergeConfig without adding dedicated chart values.

Document the mergeConfig shape and extend focused tests for config decoding, env rendering, operator config merging, and collector-only pod mutation.

Closes #325

Signed-off-by: Kristina Pathak <kpathak@nvidia.com>
Signed-off-by: Kristina Pathak <kpathak@nvidia.com>
Signed-off-by: Kristina Pathak <kpathak@nvidia.com>
Signed-off-by: Kristina Pathak <kpathak@nvidia.com>
@kristinapathak
kristinapathak force-pushed the ci/byoo-otel-config-knobs branch from d16d4f7 to 13b89a4 Compare July 21, 2026 22:35
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.

1 participant