Endpoints
Send the request body as
application/x-protobuf or application/json. You
can compress the body with Content-Encoding: gzip.
Send a project ingest key in 1 of these 2 headers:
x-logbrew-key: lbw_ingest_...Authorization: Bearer lbw_ingest_...
server key for a service. The key kinds are in
Project key kinds.
Configure an OpenTelemetry SDK
OpenTelemetry SDKs read the standardOTEL_* environment variables. Set the
base endpoint. The SDK adds /v1/logs, /v1/traces, and /v1/metrics.
Configure the OpenTelemetry Collector
Add anotlphttp exporter. Set the base endpoint. The exporter adds the
signal path.
How LogBrew reads OTLP data
LogBrew reads these resource attributes into the event context:
Other resource attributes and the instrumentation scope stay in the metadata
of each event.
LogBrew rejects non-monotonic delta sums. A log record or span keeps its trace
ID and span ID, so logs show in their trace.
LogBrew replaces credentials with
[redacted] before it stores the data. This
applies to attribute values whose keys name a credential, such as
authorization, cookie, password, secret, api_key, or a key that ends
in token. It also applies to process.command_args, process.command_line,
the user and password in a URL, and URL query values such as token, code,
key, and signature. Do not send other secrets.
Limits
The rate limits and plan limits of SDK data also apply. If a request has too
many records, LogBrew stores the first records and rejects the rest. Send
smaller batches.
Responses
LogBrew answers in the encoding of the request.
When your account reaches its plan limit, LogBrew answers
200 with every
record rejected. The message gives the reset time. The exporter does not try
again before the reset.
LogBrew reports rejected records in
account usage. They show in
sdk_dropped_events with the reason otlp_rejected_record, or
usage_limit_exceeded at the plan limit. Rejected records do not count
toward usage.
LogBrew does not store the records of a resent request again. It finds a
resent record by its content.
