Free-form text log lines without machine-readable fields, the legacy format that prevents almost every modern observability technique.
Unstructured logs are log lines written as free-form text without machine-parseable structure, e.g. 'INFO 2026-04-29 12:34:56 user signed in (id=42, ip=1.2.3.4)'. Structured logs (JSON, logfmt, Common Event Format) put the same data in named fields the backend can index and query. Modern observability stacks assume structured logs; unstructured ones either get parsed by fragile regex at ingest or remain semi-blind to the indexer.
Unstructured logs prevent almost every advanced observability technique: cross-service queries break, anomaly detection over fields fails, alerting requires brittle regex. Migrating to structured logging (especially JSON with consistent field names across services) is one of the highest-impact observability investments any team can make. Pair the migration with a logging library that enforces the structure rather than asking developers to remember.
See the part of the platform that handles unstructured logs in production.