Structured Logging
Moneat supports structured log ingestion via the OpenTelemetry Logs Protocol (OTLP). Send structured logs from your applications and search, filter, and tail them in real-time through the dashboard.
Ingestion
OTLP endpoint
Send logs to Moneat using the OTLP HTTP endpoint. Configure your OpenTelemetry SDK or Collector to export logs to:
POST __MONEAT_BACKEND_URL__/v1/logs
POST __MONEAT_BACKEND_URL__/v1/logs/otlpAuthenticate with an OTLP API key passed as a Bearer token in the Authorization header. Create keys from Settings -> API Keys -> OpenTelemetry in the dashboard.
OTLP API keys are organization-level and work for all three signal types: logs, traces, and metrics. You only need one key to send all your OpenTelemetry data.
Sentry-compatible log ingestion
You can also send logs through the Sentry SDK's ingestion endpoint. Logs sent as part of a Sentry envelope are automatically processed and stored:
POST /api/{projectId}/logs/Compatible agents can also send logs through their source-specific intake. See Datadog log collection for the Datadog Agent path.
Searching logs
Navigate to Logs to search and filter logs for your services. The search interface supports:
- Full-text search - Search across log messages
- Level filtering - Filter by log level (debug, info, warn, error, fatal)
- Time range - Narrow results to a specific time window
- Attribute filtering - Filter by structured log attributes
Use structured log attributes (like user_id, request_id, or service) to quickly narrow down relevant log entries.
Real-time tailing
Moneat supports real-time log tailing via WebSocket. In the dashboard, click the "Live Tail" button to stream logs as they arrive. You can apply filters to the live stream to focus on specific log levels or attributes.
Log retention
Logs are stored in ClickHouse for high-performance querying. Retention periods depend on your plan and deployment configuration. Check Billing & Plans for current limits.