Skip to main content

Node Agent Configuration

The NudgeBee Node Agent can be finely tuned using a set of environment variables that control its behavior. These are exposed as flags internally but can be set through the Helm values.yaml under the nodeAgent.env section.

This document lists the relevant configuration flags, what they do, and how to set them.


🌐 Network & Listening​

FlagDescriptionDefault
LISTENAddress the agent listens on (ip:port or :port)0.0.0.0:80
CGROUPFS_ROOTPath to cgroup filesystem mount/sys/fs/cgroup
EPHEMERAL_PORT_RANGESkip tracking these TCP port ranges32768-60999
TRACK_PUBLIC_NETWORKWhitelisted public IP networks to track0.0.0.0/0

πŸ” Metrics & Logs​

FlagDescriptionDefault
DISABLE_LOG_PARSINGDisable container log parsingfalse
DISABLE_L7_TRACINGDisable Layer 7 (application-level) tracingfalse
DISABLE_PINGERDisable upstream pingingtrue
LOG_PER_SECONDMax number of logs processed per second10.0
LOG_BURSTMax log burst capacity (tokens)100
MAX_LABEL_LENGTHMaximum length for any metric label value4096
EXCLUDE_HTTP_REQUESTS_BY_PATHSkip HTTP metrics by path (comma-separated)(none)

πŸ›‘ Sensitive Handling​

FlagDescriptionDefault
SANITIZE_HEADERSEnable header sanitizationtrue
SENSITIVE_HEADERSList of sensitive header names to sanitize (comma-separated)Authorization, Cookie, X-Action-Token
DISABLE_SENSITIVE_LOG_PARSINGDisable sensitive log parsing, default is disabledtrue

☁ Cloud Labels​

These enrich the node_cloud_info metric:

FlagDescription
PROVIDERCloud provider name
REGIONCloud region
AVAILABILITY_ZONEAvailability zone
ACCOUNT_IDCloud account ID
INSTANCE_TYPEInstance type
INSTANCE_LIFE_CYCLEInstance lifecycle (spot/on-demand)

πŸ”— External Endpoints​

FlagDescription
COLLECTOR_ENDPOINTBase endpoint for all telemetry
API_KEYCoroot API key (if applicable)
METRICS_ENDPOINTSpecific metrics push endpoint
TRACES_ENDPOINTSpecific traces push endpoint
LOGS_ENDPOINTSpecific logs push endpoint
PROFILES_ENDPOINTSpecific profiles push endpoint
INSECURE_SKIP_VERIFYSkip TLS verification (not recommended)

πŸ”„ Scraping & Storage​

FlagDescriptionDefault
SCRAPE_INTERVALHow often to gather metrics15s
WAL_DIRWhere to store Write-Ahead Logs/tmp/coroot-node-agent

πŸ”§ Other Useful Flags​

FlagDescriptionDefault
RESOLVE_DNSEnable DNS resolutionfalse
IGNORE_CONTROL_PLANEIgnore these control plane componentskarpenter,loki,prometheus,grafana,kubelet,etcd,apiserver,victoria,nudgebee-agent,kube-system
TRACE_ID_HEADERSHeaders to extract trace IDsTraceparent,X-Request-Id

πŸš€ Applying Configurations​

Here’s an example values.yaml with common flags explicitly set:

nodeAgent:
env:
- name: LISTEN
value: ":8080"
- name: DISABLE_LOG_PARSING
value: "true"
- name: LOG_PER_SECOND
value: "20"
- name: SANITIZE_HEADERS
value: "true"
- name: SENSITIVE_HEADERS
value: "Authorization,Proxy-Authorization,Cookie,X-Auth-Token"
- name: PROVIDER
value: "aws"
- name: REGION
value: "us-east-1"
- name: ACCOUNT_ID
value: "123456789"
- name: SCRAPE_INTERVAL
value: "30s"

To apply these settings, run:

helm upgrade --install nudgebee-agent nudgebee-agent/nudgebee-agent \
--namespace nudgebee-agent --create-namespace \
-f values.yaml