Skip to content

Logs

Osuite Logs gives you a unified view of log data from every part of your stack — applications, containers, hosts, and cloud services. Every log arrives over the OpenTelemetry Protocol (OTLP), pre-enriched with resource context and automatically correlated with traces when a trace and span ID are present.

The Logs Explorer runs full-text search across your log data with fast response times, even over millions of records. It combines a free-text search over the log body with structured filters, so you can narrow a stream down to the exact records you need.

You can filter by:

  • Severity level
  • Service name or any resource attribute (host, container, Kubernetes pod)
  • Time range, absolute or relative
  • Any attribute key-value pair on the log record
  • Free text matched against the log body

Filtering by trace_id returns every log emitted during a single request. See Trace correlation.

Each record carries an OpenTelemetry SeverityNumber and an optional SeverityText. Osuite maps numbers to the six canonical levels so you can filter consistently regardless of the source logger’s own naming.

LevelSeverityNumber rangeTypical text
TRACE1–4TRACE
DEBUG5–8DEBUG
INFO9–12INFO, NOTICE
WARN13–16WARN
ERROR17–20ERROR
FATAL21–24FATAL, CRIT

When a source sends only a text level, configure a severity parser in the collector so the number is set correctly — see the parsing notes in Collect log files.

Every log record in Osuite follows the OpenTelemetry Log Data Model. Regardless of where a log originates, it arrives with a consistent structure:

FieldDescription
TimestampWhen the log was emitted
SeverityText / SeverityNumberLog level (INFO, WARN, ERROR, etc.)
BodyThe log message (string or structured object)
AttributesKey-value pairs scoped to this log record
ResourceAttributes describing the source — service name, host, k8s pod
TraceId / SpanIdPresent when the log was emitted inside a traced request

When TraceId is present, Osuite links the log record to its trace. From the Logs Explorer you jump to the full trace in one click, and from the Trace view you see every related log in context. Applications that emit logs through the OpenTelemetry SDK or a logger bridge get this automatically. See Trace correlation.

Log retention is configurable. On enterprise plans, Osuite can sync older logs to your own S3-compatible storage for compliance or long-term analysis without keeping them hot in the search index — set up by the Osuite team on request. See the logs pipeline.

Every source sends logs over OTLP, either directly from your application’s SDK or through the OpenTelemetry Collector. Start from the collection hub, or jump to a source below.

SourceHow logs are collectedGuide
ApplicationsOTel SDK log bridge from your existing loggerCollect application logs
Log files on diskCollector filelog receiverCollect log files
Docker containersCollector filelog on the json-file driverCollect Docker container logs
Kubernetes podsCollector filelog + k8sattributesCollect Kubernetes logs
Syslog and journaldCollector syslog / journald receiversCollect syslog and journald
Cloud servicesCloud log streams over the CollectorCollection hub