{"record":{"id":"d9c820e02c4a7c4b","repo":"different-ai/openwork","slug":"is-required-when-the-signal-exporter-is-otlp","errorCode":null,"errorMessage":"is required when the signal exporter is otlp","messagePattern":"is required when the signal exporter is otlp","errorType":"validation","errorClass":"ObservabilityConfigError","httpStatus":null,"severity":"error","filePath":"ee/packages/utils/src/observability.ts","lineNumber":352,"sourceCode":"  } else if (baseEndpoint !== undefined) {\n    endpoint = appendOtelSignalPath(baseEndpoint, signal)\n    endpointSource = \"base\"\n  }\n\n  return {\n    exporter: parseOtelExporter(env, keys.exporter),\n    protocol: parseOtelProtocol(env, keys.protocol, protocol),\n    endpoint,\n    endpointSource,\n  }\n}\n\nfunction validateOtelSignalEndpoint(signal: OTelSignal, config: OTelSignalConfig): void {\n  if (config.exporter === \"none\" || config.endpoint !== undefined) {\n    return\n  }\n\n  throw new ObservabilityConfigError(\n    \"is required when the signal exporter is otlp\",\n    otelSignalEnv(signal).endpoint,\n  )\n}\n\nfunction parseOtelConfig(env: ObservabilityEnv): OTelObservabilityConfig {\n  const protocol = parseOtelProtocol(env, \"OTEL_EXPORTER_OTLP_PROTOCOL\", OTEL_DEFAULT_PROTOCOL)\n  const rawBaseEndpoint = envValue(env, \"OTEL_EXPORTER_OTLP_ENDPOINT\")\n  const baseEndpoint = rawBaseEndpoint === undefined\n    ? undefined\n    : validateHttpUrl(rawBaseEndpoint, \"OTEL_EXPORTER_OTLP_ENDPOINT\")\n  const sampler = parseOtelSampler(env)\n\n  const signals = {\n    traces: parseOtelSignal(env, \"traces\", protocol, baseEndpoint),\n    metrics: parseOtelSignal(env, \"metrics\", protocol, baseEndpoint),\n    logs: parseOtelSignal(env, \"logs\", protocol, baseEndpoint),\n  }","sourceCodeStart":334,"sourceCodeEnd":370,"githubUrl":"https://github.com/different-ai/openwork/blob/2b7df46e8ae1517d64c896c7793d2d52ec845669/ee/packages/utils/src/observability.ts#L334-L370","documentation":"Error \"is required when the signal exporter is otlp\" thrown in different-ai/openwork.","triggerScenarios":"Thrown at ee/packages/utils/src/observability.ts:352 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2b7df46e8ae1517d64c896c7793d2d52ec845669","analyzedAt":"2026-09-01T07:59:23.713Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}