<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article Troubleshooting log boundary detection in Log module in Troubleshooting</title>
    <link>https://community.dynatrace.com/t5/Troubleshooting/Troubleshooting-log-boundary-detection-in-Log-module/ta-p/300208</link>
    <description>&lt;H1 class="text-text-100 mt-3 -mb-1 text-[1.375rem] font-bold"&gt;Troubleshooting log record boundary detection&lt;/H1&gt;
&lt;H2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold"&gt;Table of contents&lt;/H2&gt;
&lt;OL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#summary" target="_blank" rel="noopener"&gt;Summary&lt;/A&gt;&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#problem" target="_blank" rel="noopener"&gt;Problem&lt;/A&gt;&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#troubleshooting-steps" target="_blank" rel="noopener"&gt;Troubleshooting steps&lt;/A&gt;&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#resolution" target="_blank" rel="noopener"&gt;Resolution&lt;/A&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#multi-line-entries-split-across-multiple-records" target="_blank" rel="noopener"&gt;Multi-line entries split across multiple records&lt;/A&gt;&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#time-only-timestamps-causing-incorrect-splitting" target="_blank" rel="noopener"&gt;Time-only timestamps are causing incorrect splitting&lt;/A&gt;&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#two-different-timestamp-formats-in-the-same-log-file" target="_blank" rel="noopener"&gt;Two different timestamp formats in the same log file&lt;/A&gt;&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#mixed-plain-text-and-json-entries-not-separated-correctly" target="_blank" rel="noopener"&gt;Mixed plain text and JSON entries are not separated correctly&lt;/A&gt;&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#intermittent-splitting-of-multi-line-entries-with-delayed-continuation-lines" target="_blank" rel="noopener"&gt;Intermittent splitting of multi-line entries with delayed continuation lines&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#whats-next" target="_blank" rel="noopener"&gt;What's next&lt;/A&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;HR /&gt;
&lt;H2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold"&gt;Summary&lt;/H2&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;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.&lt;/P&gt;
&lt;H2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold"&gt;Problem&lt;/H2&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;You see one of the following in the Logs viewer:&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Stack traces or multi-line errors appear as multiple records instead of a single record.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Entries that should be separate are merged into a single record.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;The same log pattern is sometimes merged correctly and sometimes split — behavior is inconsistent.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Entries with non-standard timestamp formats are not recognized as record starts.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3 class="text-text-100 mt-2 -mb-1 text-base font-bold"&gt;Is your scenario supported?&lt;/H3&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;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.&lt;/P&gt;
&lt;DIV class="overflow-x-auto w-full px-2 mb-6"&gt;
&lt;TABLE class="min-w-full border-collapse text-sm leading-[1.7] whitespace-normal"&gt;
&lt;THEAD class="text-left"&gt;
&lt;TR&gt;
&lt;TH class="text-text-100 border-b-0.5 border-border-300/60 py-2 pr-4 align-top font-bold" scope="col"&gt;Scenario&lt;/TH&gt;
&lt;TH class="text-text-100 border-b-0.5 border-border-300/60 py-2 pr-4 align-top font-bold" scope="col"&gt;Support&lt;/TH&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Logs with default-recognized timestamp formats (no custom rules configured)&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Logs with custom (non-default) timestamp formats&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Multi-line entries whose continuation lines have no timestamp&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Forcing whitespace-prefixed lines to always be treated as continuations&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported (turn on&amp;nbsp;&lt;STRONG&gt;Skip indented lines&lt;/STRONG&gt;)&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Logs with two different timestamp formats in the same file&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported (requires one rule per format)&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Mixed plain text and JSON entries in the same log stream&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported (JSON lines are treated as plain text)&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Entry boundary detection without timestamp detection&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Logs whose entries begin with a consistent text pattern (no timestamp)&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; Supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Timestamps with time only, no date component&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Not supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Wildcard matching in entry boundary patterns (&lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;*&lt;/CODE&gt; is literal)&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Not supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Single rule covering two unrelated timestamp formats&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Not supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;No timestamp on the first line of a multi-line entry&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Not supported (use entry boundary instead)&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;The same time format appears occasionally in continuation lines&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Not supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;Overlapping/ambiguous date formats (e.g. &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;%d/%m/%Y&lt;/CODE&gt; and &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;%m/%d/%Y&lt;/CODE&gt;)&lt;/TD&gt;
&lt;TD class="border-b-0.5 border-border-300/30 py-2 pr-4 align-top"&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Not supported&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;H2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold"&gt;Troubleshooting steps&lt;/H2&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;The following diagnosis applies across several of the scenarios in the &lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#resolution" target="_blank" rel="noopener"&gt;Resolution&lt;/A&gt; section.&lt;/P&gt;
&lt;OL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Open the &lt;STRONG&gt;Log Module Self-Monitoring dashboard&lt;/STRONG&gt; in Dynatrace. For dashboard setup and the full list of SFM events, see &lt;A class="underline underline underline-offset-2 decoration-1 decoration-current/40 hover:decoration-current focus:decoration-current" href="#" target="_blank" rel="noopener"&gt;Log Module self-monitoring&lt;/A&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Filter by the affected log source and check for the following SFM events:
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;STRONG&gt;&lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;timestamp.no_pattern&lt;/CODE&gt; (warning)&lt;/STRONG&gt; — Log Module found no recognized timestamp in the log content. Every line is treated as its own record with an auto-assigned observation timestamp.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;STRONG&gt;&lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;timestamp.multiple_patterns&lt;/CODE&gt; (info)&lt;/STRONG&gt; — Log Module detected more than one timestamp format simultaneously, which can cause inconsistent boundary placement.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Collect a representative sample of 5–10 raw log lines from the affected source. Identify all distinct timestamp formats present.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Match what you observe to one of the scenarios below.&lt;/LI&gt;
&lt;/OL&gt;
&lt;H2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold"&gt;Resolution&lt;/H2&gt;
&lt;H3 class="text-text-100 mt-2 -mb-1 text-base font-bold"&gt;Multi-line entries split across multiple records&lt;/H3&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Symptoms&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Stack traces appear as multiple individual log records in Dynatrace rather than a single one.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Error log entries with continuation lines (for example, XML body or HTTP response) are fragmented.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Splitting is consistent — it always happens at the same structural boundary in the log.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Resolution&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;If continuation lines consistently start with a specific prefix (for example, &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;[err]&lt;/CODE&gt;, &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;Caused by:&lt;/CODE&gt;, &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;at com.&lt;/CODE&gt;), configure an &lt;STRONG&gt;Entry boundary&lt;/STRONG&gt; rule that matches the first line of each record rather than continuation lines.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;If the log format lacks a reliable record-start pattern, ask the application team to update the logging configuration to emit a full timestamp (including the date) at the start of each record.&lt;/LI&gt;
&lt;/UL&gt;
&lt;HR /&gt;
&lt;H3 class="text-text-100 mt-2 -mb-1 text-base font-bold"&gt;Time-only timestamps are causing incorrect splitting&lt;/H3&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Symptoms&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Log entries whose timestamp contains only a time component (&lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;HH:MM:SS&lt;/CODE&gt; or &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;HH:MM:SS.mmm&lt;/CODE&gt;) are split into multiple records.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Each line of a multi-line entry appears as a separate record.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Cause&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Time-only timestamps (with no date component) are not supported by Log Module — neither by default detection nor by custom rules.&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Resolution&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Choose one of the following options:&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Preferred — emit a full timestamp&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;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 &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;2026-05-14 10:00:00&lt;/CODE&gt; is &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;%Y-%m-%d %H:%M:%S&lt;/CODE&gt;.&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Alternative — use an entry boundary&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Use &lt;STRONG&gt;Entry boundary&lt;/STRONG&gt; 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.&lt;/P&gt;
&lt;OL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Go to &lt;STRONG&gt;Settings → Collect and capture → Log Monitoring → Timestamp/splitting configuration&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Create a new rule.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Set &lt;STRONG&gt;Timestamp search limit&lt;/STRONG&gt; to &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;0&lt;/CODE&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Fill in the &lt;STRONG&gt;Entry boundary&lt;/STRONG&gt; field with your pattern.&lt;/LI&gt;
&lt;/OL&gt;
&lt;HR /&gt;
&lt;H3 class="text-text-100 mt-2 -mb-1 text-base font-bold"&gt;Two different timestamp formats in the same log file&lt;/H3&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Symptoms&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;A custom timestamp rule is configured and works for some log entries but not others.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Some entries that should be multi-line are merged; others that should be merged are split.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;The rule appears to be ignored for a subset of entries.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Cause&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;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.&lt;/P&gt;
&lt;BLOCKQUOTE class="ml-2 border-l-4 border-border-300/10 pl-4 text-text-300"&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Important:&lt;/STRONG&gt; 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.&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Resolution&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Create one rule per timestamp format:&lt;/P&gt;
&lt;OL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Go to &lt;STRONG&gt;Settings&lt;/STRONG&gt; &amp;gt;&lt;STRONG&gt; Collect and capture &lt;/STRONG&gt;&amp;gt;&lt;STRONG&gt; Log Monitoring &lt;/STRONG&gt;&amp;gt; &lt;STRONG&gt;Timestamp/splitting configuration&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Add a rule with the pattern for the first format.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Add a separate rule with the pattern for the second format.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Apply the same &lt;STRONG&gt;Matcher&lt;/STRONG&gt; to both rules so they target the same log source.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Each format will then correctly trigger record boundaries for its matching lines.&lt;/P&gt;
&lt;HR /&gt;
&lt;H3 class="text-text-100 mt-2 -mb-1 text-base font-bold"&gt;Mixed plain text and JSON entries are not separated correctly&lt;/H3&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Symptoms&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;A log file or container stream contains both plain-text log lines and JSON objects, but they are ingested together as a single record or incorrectly grouped.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;JSON log entries are sometimes reported individually and sometimes merged with surrounding plain text lines, depending on where in the file Log module began reading.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;A timestamp/splitting rule exists, but does not reliably separate the two entry types.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Cause&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;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.&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Resolution&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Choose the approach that matches your log format.&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Option A — Timestamp rule (preferred when each entry begins with a recognizable timestamp)&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;If each entry — both plain text and JSON — begins with a recognizable timestamp within the first 8192 bytes (the maximum value of &lt;STRONG&gt;Timestamp search limit&lt;/STRONG&gt;), configure a timestamp rule for each format.&lt;/P&gt;
&lt;OL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Go to &lt;STRONG&gt;Settings &lt;/STRONG&gt;&amp;gt;&lt;STRONG&gt; Collect and capture&lt;/STRONG&gt; &amp;gt;&lt;STRONG&gt; Log Monitoring &lt;/STRONG&gt;&amp;gt;&lt;STRONG&gt; Timestamp/splitting configuration&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Add a rule that matches timestamp patterns in plain text entries.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Add a separate rule that matches JSON entries using the timestamp pattern. For example, for a JSON field containing the timestamp: &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;"instant":"%Y-%m-%dT%H:%M:%S"&lt;/CODE&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Apply the same &lt;STRONG&gt;Matcher&lt;/STRONG&gt; to both rules to scope them to the same log source.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Option B — Entry boundary (use when entries lack timestamps or the timestamp is not reliably positioned)&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Configure one entry boundary pattern per entry type. The pattern must match a text fragment that appears at the start of each entry.&lt;/P&gt;
&lt;OL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Go to &lt;STRONG&gt;Settings &lt;/STRONG&gt;&amp;gt;&lt;STRONG&gt; Collect and capture &lt;/STRONG&gt;&amp;gt;&lt;STRONG&gt; Log Monitoring &lt;/STRONG&gt;&amp;gt;&lt;STRONG&gt; Timestamp/splitting configuration&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Create a rule and set the&amp;nbsp;&lt;STRONG&gt;Entry boundary&lt;/STRONG&gt; to a text fragment that appears at the start of JSON entries, for example, &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;{"instant":&lt;/CODE&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Add a second rule with &lt;STRONG&gt;Entry boundary&lt;/STRONG&gt; matching the start of plain text entries, for example, &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;/opt/out/&lt;/CODE&gt; or &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;[INFO]&lt;/CODE&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Apply the same &lt;STRONG&gt;Matcher&lt;/STRONG&gt; to both rules to scope them to the same log source.&lt;/LI&gt;
&lt;/OL&gt;
&lt;BLOCKQUOTE class="ml-2 border-l-4 border-border-300/10 pl-4 text-text-300"&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt; The &lt;CODE class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]"&gt;*&lt;/CODE&gt; character in an entry boundary pattern is treated as a literal asterisk, not as a wildcard.&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;HR /&gt;
&lt;H3 class="text-text-100 mt-2 -mb-1 text-base font-bold"&gt;Intermittent splitting of multi-line entries with delayed continuation lines&lt;/H3&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Symptoms&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;Stack traces or multi-line error entries are sometimes merged into a single record, and sometimes split into separate records — the behavior is inconsistent for the same log pattern.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;A timestamp rule is configured correctly, but splitting still occurs intermittently.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;The issue occurs more frequently under load or when the application writes log output slowly.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Cause (brief)&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;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.&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;&lt;STRONG&gt;Workaround&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;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.&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;This setting cannot be configured in the Dynatrace UI. Contact Dynatrace Support to have it applied in your environment.&lt;/P&gt;
&lt;P class="font-claude-response-body break-words whitespace-normal leading-[1.7]"&gt;Before requesting this change, consider the trade-offs:&lt;/P&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;STRONG&gt;Ingest delay:&lt;/STRONG&gt; A longer timeout increases ingest delay for the last log record in each processing batch. Records that are followed by additional lines within the timeout window are unaffected.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;&lt;STRONG&gt;Scope:&lt;/STRONG&gt; The setting applies to an entire scope — tenant, Kubernetes cluster, host group, or host. It can't be restricted to a single log source, container, or namespace.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold"&gt;What's next&lt;/H2&gt;
&lt;UL class="[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3"&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;For JSON parsing issues (wrong timestamp from JSON field, severity mapping), see &lt;EM&gt;Troubleshooting JSON log parsing&lt;/EM&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;For missing logs (records not appearing at all), see &lt;EM&gt;Troubleshooting missing logs&lt;/EM&gt;.&lt;/LI&gt;
&lt;LI class="font-claude-response-body whitespace-normal break-words pl-2"&gt;For ingest delay, see &lt;EM&gt;Troubleshooting log ingest delay&lt;/EM&gt;.&lt;/LI&gt;
&lt;/UL&gt;</description>
    <pubDate>Tue, 02 Jun 2026 13:13:36 GMT</pubDate>
    <dc:creator>Kacper</dc:creator>
    <dc:date>2026-06-02T13:13:36Z</dc:date>
    <item>
      <title>Troubleshooting log boundary detection in Log module</title>
      <link>https://community.dynatrace.com/t5/Troubleshooting/Troubleshooting-log-boundary-detection-in-Log-module/ta-p/300208</link>
      <description>&lt;P&gt;&lt;LI-TOC indent="15" liststyle="disc" maxheadinglevel="2"&gt;&lt;/LI-TOC&gt;&lt;/P&gt;
&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P&gt;*&lt;EM&gt;Use a table of contents for longer articles.&amp;nbsp;&lt;/EM&gt;&lt;/P&gt;
&lt;H1&gt;Summary&lt;/H1&gt;
&lt;P&gt;&lt;EM&gt;*This is a mandatory section.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Short description of which part of the Dynatrace platform the article refers to and what kind of problem it will help resolve / task it will describe.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H1&gt;Problem&lt;/H1&gt;
&lt;P&gt;&lt;EM&gt;*This is a mandatory section.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Provide a precise description of the problem / task to be described.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H1&gt;Troubleshooting steps&lt;/H1&gt;
&lt;P&gt;&lt;EM&gt;*This section can be omitted.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H1&gt;Resolution&lt;/H1&gt;
&lt;P&gt;&lt;EM&gt;*This section can be omitted for ticket‑creation articles.&lt;/EM&gt;&lt;/P&gt;
&lt;H1&gt;What's next&lt;/H1&gt;
&lt;P&gt;&lt;EM&gt;*This is a mandatory section.&lt;/EM&gt;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 02 Jun 2026 13:13:36 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Troubleshooting/Troubleshooting-log-boundary-detection-in-Log-module/ta-p/300208</guid>
      <dc:creator>Kacper</dc:creator>
      <dc:date>2026-06-02T13:13:36Z</dc:date>
    </item>
  </channel>
</rss>

