Skip to main content

Env var reference

Complete list. See Environment variables for where to set them and how precedence works. The HERMES_OTEL_* table is generated from HermesOtelConfig by scripts/gen_config_docs.py; a test fails if it drifts.

Backend selection

VarValueEffect
LANGSMITH_TRACINGtrue/falseEnables LangSmith backend
LANGSMITH_API_KEYlsv2_...LangSmith auth
LANGSMITH_ENDPOINTURLLangSmith endpoint (default: https://api.smith.langchain.com)
LANGSMITH_PROJECTstringLangSmith project name
LANGSMITH_WORKSPACE_IDstringLangSmith workspace id header (multi-workspace orgs)
OTEL_LANGFUSE_PUBLIC_API_KEYpk-lf-...Langfuse public key (plugin-specific)
OTEL_LANGFUSE_SECRET_API_KEYsk-lf-...Langfuse secret key (plugin-specific)
OTEL_LANGFUSE_ENDPOINTURLLangfuse OTLP endpoint
LANGFUSE_PUBLIC_KEYpk-lf-...Langfuse public key (SDK-standard)
LANGFUSE_SECRET_KEYsk-lf-...Langfuse secret key (SDK-standard)
LANGFUSE_BASE_URLURLLangfuse base URL (SDK-standard)
OTEL_SIGNOZ_ENDPOINTURLSigNoz OTLP endpoint (self-host: http://localhost:4328/v1/traces)
OTEL_SIGNOZ_INGESTION_KEYsz-...SigNoz Cloud ingestion key
OTEL_JAEGER_ENDPOINTURLJaeger OTLP endpoint (http://localhost:4318/v1/traces)
OTEL_TEMPO_ENDPOINTURLTempo OTLP endpoint
OTEL_PHOENIX_ENDPOINTURLPhoenix OTLP endpoint (http://localhost:6006/v1/traces)
OTEL_UPTRACE_ENDPOINTURLUptrace OTLP endpoint; enables Uptrace in env-var mode
OTEL_UPTRACE_DSN / UPTRACE_DSNDSNUptrace DSN (uptrace-dsn header)
OTEL_OPENOBSERVE_ENDPOINTURLOpenObserve .../api/<org>/v1/traces; enables OpenObserve in env-var mode
OTEL_OPENOBSERVE_USER / OPENOBSERVE_USERstringOpenObserve Basic-auth user
OTEL_OPENOBSERVE_PASSWORD / OPENOBSERVE_PASSWORDstringOpenObserve Basic-auth password
OTEL_OPENOBSERVE_STREAMstringOptional OpenObserve stream name
OTEL_PARSEABLE_ENDPOINTURLParseable ingestor .../v1/traces; enables Parseable in env-var mode
OTEL_PARSEABLE_API_KEY / PARSEABLE_API_KEYstringParseable API key
PARSEABLE_TRACES_DATASET / PARSEABLE_METRICS_DATASET / PARSEABLE_LOGS_DATASETstringParseable dataset per signal (defaults hermes-traces / hermes-metrics / hermes-logs)
HONEYCOMB_API_KEYhcaik_...Honeycomb ingest key (x-honeycomb-team); enables Honeycomb in env-var mode
OTEL_HONEYCOMB_API_KEYhcaik_...Honeycomb key (plugin-specific alias)
OTEL_HONEYCOMB_ENDPOINTURLHoneycomb endpoint override (default: US region)
WANDB_API_KEYstringW&B API key; enables Weave in env-var mode when routing vars are also set
WANDB_ENTITYstringW&B entity/team for Weave routing (wandb.entity)
WANDB_PROJECTstringW&B project for Weave routing (wandb.project)
DEFAULT_WANDB_ENTITYstringWeave entity fallback, useful with an OTel Collector
DEFAULT_WANDB_PROJECTstringWeave project fallback, useful with an OTel Collector
OTEL_WEAVE_ENDPOINTURLFull Weave OTLP traces endpoint override
WANDB_OTLP_ENDPOINTURLWeave OTLP endpoint alias used by W&B docs
OTEL_WEAVE_BASE_URLURLW&B base URL; plugin appends the trace ingest path
WANDB_BASE_URLURLW&B base URL alias for Dedicated Cloud / Self-Managed
OTEL_PROJECT_NAMEstringopeninference.project.name on the Resource (the Phoenix project). service.name is always hermes-agent; override it with resource_attributes:

HERMES_OTEL_* overrides

Every scalar field of the config file can be overridden by HERMES_OTEL_<FIELD> (upper-case field name). Maps (headers, global_tags, resource_attributes) and backends are yaml-only. An env var that cannot be parsed as the field's type logs a warning and is ignored.

Env varMaps toTypeDefault
HERMES_OTEL_ENABLEDenabledbooltrue
HERMES_OTEL_SAMPLE_RATEsample_ratefloatnull
HERMES_OTEL_ROOT_SPAN_TTL_MSroot_span_ttl_msint600000
HERMES_OTEL_FLUSH_INTERVAL_MSflush_interval_msint60000
HERMES_OTEL_PREVIEW_MAX_CHARSpreview_max_charsint1200
HERMES_OTEL_CAPTURE_PREVIEWScapture_previewsbooltrue
HERMES_OTEL_TOOL_INPUT_PREVIEW_MAX_CHARStool_input_preview_max_charsintnull
HERMES_OTEL_TOOL_OUTPUT_PREVIEW_MAX_CHARStool_output_preview_max_charsintnull
HERMES_OTEL_LLM_INPUT_PREVIEW_MAX_CHARSllm_input_preview_max_charsintnull
HERMES_OTEL_LLM_OUTPUT_PREVIEW_MAX_CHARSllm_output_preview_max_charsintnull
HERMES_OTEL_PROJECT_NAMEproject_namestring(unset)
HERMES_OTEL_SPAN_BATCH_MAX_QUEUE_SIZEspan_batch_max_queue_sizeint2048
HERMES_OTEL_SPAN_BATCH_SCHEDULE_DELAY_MSspan_batch_schedule_delay_msint1000
HERMES_OTEL_SPAN_BATCH_MAX_EXPORT_BATCH_SIZEspan_batch_max_export_batch_sizeint512
HERMES_OTEL_SPAN_BATCH_EXPORT_TIMEOUT_MSspan_batch_export_timeout_msint30000
HERMES_OTEL_FORCE_FLUSH_ON_SESSION_ENDforce_flush_on_session_endbooltrue
HERMES_OTEL_CAPTURE_CONVERSATION_HISTORYcapture_conversation_historyboolfalse
HERMES_OTEL_CONVERSATION_HISTORY_MAX_CHARSconversation_history_max_charsint20000
HERMES_OTEL_CAPTURE_FULL_PROMPTScapture_full_promptsboolfalse
HERMES_OTEL_CAPTURE_FULL_RESPONSEScapture_full_responsesboolfalse
HERMES_OTEL_CAPTURE_SENDER_IDcapture_sender_idboolfalse
HERMES_OTEL_CAPTURE_LOGScapture_logsboolfalse
HERMES_OTEL_LOG_LEVELlog_levelstring"INFO"
HERMES_OTEL_LOG_ATTACH_LOGGERlog_attach_loggerstring(unset)
HERMES_OTEL_EMIT_GENAI_METRICSemit_genai_metricsbooltrue
HERMES_OTEL_SKILL_SPANSskill_spansbooltrue
HERMES_OTEL_DISCOVERY_PROMPTdiscovery_promptboolfalse
HERMES_OTEL_DASHBOARD_LIVEdashboard_livebooltrue
HERMES_OTEL_DASHBOARD_LIVE_MAX_SPANSdashboard_live_max_spansint1000
HERMES_OTEL_HOST_METRICShost_metricsboolfalse
HERMES_OTEL_HOST_METRICS_GPUhost_metrics_gpustring"auto"
HERMES_OTEL_HOST_METRICS_INTERVAL_MShost_metrics_interval_msint1000
HERMES_OTEL_SUPPRESS_MCP_PING_SPANSsuppress_mcp_ping_spansbooltrue

Paths

VarEffect
HERMES_OTEL_CONFIGExplicit path to the config file; highest precedence — see Where does the config live?
HERMES_HOMEHermes' home (default ~/.hermes); the plugin resolves hermes_otel.yaml and the live store under it
HERMES_OTEL_LIVE_DBPath of the live dashboard's SQLite store (default $HERMES_HOME/hermes_otel_live.db)

Debug

VarValueEffect
HERMES_OTEL_DEBUGtrue/falseEnables debug log at ~/.hermes/plugins/hermes_otel/debug.log

Boolean accepted values

TrueFalse
true / 1 / yes / onfalse / 0 / no / off / ""

Case-insensitive. Anything else logs a warning naming the variable and is ignored (the yaml value or default is kept).