on 02 Jun 2026 02:13 PM
This article helps you troubleshoot situations where the Log module incorrectly splits incoming log content into log records, for example, stack traces appearing as separate entries instead of a single entry, or multi-line errors being grouped incorrectly. It applies to Log module deployed via OneAgent or Dynatrace Operator on both SaaS and Managed environments, and covers file-based logs and container stdout/stderr logs on Linux and Windows, including Kubernetes workloads.
You see one of the following in the Logs viewer:
Use the table below to check whether your boundary detection scenario is supported. If it's listed as not supported, jump to the matching resolution section for guidance or a workaround.
| Scenario | Support |
|---|---|
| Logs with default-recognized timestamp formats (no custom rules configured) | ✅ Supported |
| Logs with custom (non-default) timestamp formats | ✅ Supported |
| Multi-line entries whose continuation lines have no timestamp | ✅ Supported |
| Forcing whitespace-prefixed lines to always be treated as continuations | ✅ Supported (turn on Skip indented lines) |
| Logs with two different timestamp formats in the same file | ✅ Supported (requires one rule per format) |
| Mixed plain text and JSON entries in the same log stream | ✅ Supported (JSON lines are treated as plain text) |
| Entry boundary detection without timestamp detection | ✅ Supported |
| Logs whose entries begin with a consistent text pattern (no timestamp) | ✅ Supported |
| Timestamps with time only, no date component | ❌ Not supported |
Wildcard matching in entry boundary patterns (* is literal) |
❌ Not supported |
| Single rule covering two unrelated timestamp formats | ❌ Not supported |
| No timestamp on the first line of a multi-line entry | ❌ Not supported (use entry boundary instead) |
| The same time format appears occasionally in continuation lines | ❌ Not supported |
Overlapping/ambiguous date formats (e.g. %d/%m/%Y and %m/%d/%Y) |
❌ Not supported |
The following diagnosis applies across several of the scenarios in the Resolution section.
timestamp.no_pattern (warning) — Log Module found no recognized timestamp in the log content. Every line is treated as its own record with an auto-assigned observation timestamp.timestamp.multiple_patterns (info) — Log Module detected more than one timestamp format simultaneously, which can cause inconsistent boundary placement.Symptoms
Resolution
[err], Caused by:, at com.), configure an Entry boundary rule that matches the first line of each record rather than continuation lines.Symptoms
HH:MM:SS or HH:MM:SS.mmm) are split into multiple records.Cause
Time-only timestamps (with no date component) are not supported by Log Module — neither by default detection nor by custom rules.
Resolution
Choose one of the following options:
Preferred — emit a full timestamp
Update the application logging configuration to include the date in each timestamp, then configure a custom timestamp rule that matches the new format. For example, the strftime pattern for 2026-05-14 10:00:00 is %Y-%m-%d %H:%M:%S.
Alternative — use an entry boundary
Use Entry boundary to identify record starts by a text pattern that appears only on the first line of each entry — for example, a fixed prefix, a log level tag, or a structural marker.
0.Symptoms
Cause
A single timestamp rule applies only to a single timestamp format. When a log file contains two distinct formats, lines of the uncovered format are not recognized — they're treated as continuations, or each becomes its own auto-timestamped record.
Important: Configuring any rule disables default timestamp detection for the matched source. A format that was previously auto-detected (such as ISO 8601 or RFC 3339) must be included in an explicit rule once any rule is configured.
Resolution
Create one rule per timestamp format:
Each format will then correctly trigger record boundaries for its matching lines.
Symptoms
Cause
Log module does not natively distinguish between plain-text and JSON entry formats within the same log stream; JSON lines are treated as plain text. Without an explicit boundary signal, Log module can't determine where one entry ends and the next begins when the entry types alternate.
Resolution
Choose the approach that matches your log format.
Option A — Timestamp rule (preferred when each entry begins with a recognizable timestamp)
If each entry — both plain text and JSON — begins with a recognizable timestamp within the first 8192 bytes (the maximum value of Timestamp search limit), configure a timestamp rule for each format.
"instant":"%Y-%m-%dT%H:%M:%S".Option B — Entry boundary (use when entries lack timestamps or the timestamp is not reliably positioned)
Configure one entry boundary pattern per entry type. The pattern must match a text fragment that appears at the start of each entry.
{"instant":./opt/out/ or [INFO].Note: The
*character in an entry boundary pattern is treated as a literal asterisk, not as a wildcard.
Symptoms
Cause (brief)
Log Module holds open log records for a configurable timeout (default: 60 seconds) while waiting for continuation lines. If continuation lines (such as a stack trace body) are written after this timeout — because of application buffering, slow I/O, or high system load — the record is flushed as-is, and the late lines become standalone entries.
Workaround
The timeout that controls how long Log module waits for continuation lines can be increased to give the agent more time to collect delayed lines.
This setting cannot be configured in the Dynatrace UI. Contact Dynatrace Support to have it applied in your environment.
Before requesting this change, consider the trade-offs: