OpenTelemetry Collector — gateway config
Not a custom distribution — a ready-made config + deployment recipes for the upstream otel/opentelemetry-collector-contrib image (Docker Compose and Kubernetes manifests). Point your fleet's OTLP exporters at the collector; it batches, applies memory limits, and forwards everything to BugWatch.
Collector → BugWatch: otlphttp exporter (gzip) to ${BUGWATCH_HTTP}/v1/logs|traces|metrics (default https://api.newinstance.cloud), header x-api-key: ${BUGWATCH_API_KEY} = KEYID:secret with ingest:write. gRPC alternative: api.newinstance.cloud:4317.
Pipeline: OTLP receivers (gRPC :4317, HTTP :4318) → memory_limiter (512 MiB) → resource upsert (collector=bugwatch-otel-collector) → batch (512 / 5 s) → BugWatch. Health check on :13133.
Use the collector when you want one egress point, local buffering, or to keep API keys off application hosts. Apps that talk OTLP directly can skip it — see OpenTelemetry, Prometheus & Tracing.