receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 filelog: include: - /root/.letta/logs/Letta.log multiline: line_start_pattern: '^[\{\[]|^[0-9]{4}-[0-9]{2}-[0-9]{2}' operators: # Parse JSON logs (skip non-JSON lines) - type: json_parser parse_from: body parse_to: attributes on_error: send - type: time_parser parse_from: attributes.timestamp layout_type: gotime layout: '2006-01-02T15:04:05.999999Z07:00' on_error: send if: 'attributes.timestamp != nil' processors: resource: attributes: - key: environment value: ${env:LETTA_ENVIRONMENT} action: upsert memory_limiter: check_interval: 1s limit_mib: 1024 spike_limit_mib: 256 batch: timeout: 10s send_batch_size: 8192 exporters: clickhouse: endpoint: ${CLICKHOUSE_ENDPOINT} database: ${CLICKHOUSE_DATABASE} username: ${CLICKHOUSE_USERNAME} password: ${CLICKHOUSE_PASSWORD} timeout: 5s sending_queue: queue_size: 100 retry_on_failure: enabled: true initial_interval: 5s max_interval: 30s max_elapsed_time: 300s datadog: api: site: ${env:DD_SITE} key: ${env:DD_API_KEY} traces: span_name_as_resource_name: true span_name_remappings: http.method: http.request.method http.status_code: http.response.status_code extensions: health_check: pprof: zpages: service: telemetry: logs: level: error metrics: address: 0.0.0.0:8888 extensions: [health_check, pprof, zpages] pipelines: traces: receivers: [otlp] processors: [memory_limiter, batch] exporters: [clickhouse, datadog] logs: receivers: [filelog] processors: [resource, memory_limiter, batch] exporters: [clickhouse, datadog] metrics: receivers: [otlp] processors: [memory_limiter, batch] exporters: [clickhouse]