DRC
reference operator public

Configuration

DRC configuration has three layers:

  1. CLI flags for one invocation.
  2. .drc/drc.toml for project-level defaults generated by drc init.
  3. Environment variables for API endpoints, client metadata, and credentials.

CLI flags take precedence over project defaults. Keep credentials outside source control.

Initialize project defaults


drc init --codebase . \
  --language auto \
  --telemetry off \
  --auto-update off \
  --non-interactive

Capture flags

Flag Meaning
--port Proxy listen port; default 8080.
--target-port Application target port; default 3000.
--extra-port Additional dependency target port; repeatable.
--capture-mode headers-only, metadata-plus, full-body, or sample.
--sample-rate Sampling fraction for sample, between 0 and 1.

Client environment variables

Variable Meaning
DRC_ENDPOINT SDK/API base URL.
DRC_API_URL API base URL for shell and web integrations.
DRC_API_KEY API key supplied by a secret manager.
DRC_ENVIRONMENT Environment label attached to captured executions.
DRC_VERSION Service or build label attached to captured executions.
DRC_TELEMETRY Optional CLI reporting control; set off to disable.

Use HTTPS for non-local endpoints. SDKs reject credentials embedded in endpoint URLs.

Server configuration

If you operate the DRC API, provide database, storage, transport, identity, and audit settings through your platform’s protected configuration facility. Keep signing material, passwords, and raw API keys out of images, source files, URLs, and project files. The exact server settings are deployment-specific; client integrations should use the documented endpoint and authentication variables above.

Capture privacy

Use the narrowest capture mode that answers the question. Body capture is more sensitive than headers or metadata. Review authorization, cookie, token, password, secret, query-string, SQL, database-argument, and message-body fields before retaining captured data.

The Python client defaults to no raw request/response body capture; body capture is opt-in and bounded. All SDKs apply size validation and known-sensitive-field redaction, but application-specific data still requires review.


drc privacy audit capture.json --policy .drc/redaction.toml --fail-on-leak

API response limits

The public API contract bounds identifiers, tags, event data, metadata, request bodies, and list sizes. The current documented limits include 1 MiB event data, 64 KiB event metadata, at most 32 tags, and list limits up to 1000 items. Treat these as validation limits, not throughput guarantees.

For CI, make consent explicit and non-interactive:


drc init --non-interactive --telemetry off --auto-update off

Use JSON output for automation and preserve execution/job IDs in CI artifacts according to your data-retention policy.