<?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>topic Re: Note about how HEC events are parsed based on the Endpoint configured in Getting Data In</title>
    <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762347#M120709</link>
    <description>/event uses pre-structured JSON, so line breaking is skipped. /raw follows the normal parsing pipeline, meaning props.conf settings like LINE_BREAKER and INDEXED_EXTRACTIONS apply. The key is ensuring the incoming sourcetype matches your TA configuration. Thanks for the clear explanation!</description>
    <pubDate>Sun, 19 Jul 2026 06:51:37 GMT</pubDate>
    <dc:creator>jasonmiller11tt</dc:creator>
    <dc:date>2026-07-19T06:51:37Z</dc:date>
    <item>
      <title>Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762318#M120703</link>
      <description>&lt;P&gt;Hello, a quick note from support to explain how events are handled on HEC (on HF for instance) :&lt;/P&gt;&lt;P&gt;&lt;A href="https://help.splunk.com/en/splunk-enterprise/get-started/get-data-in/9.3/get-data-with-http-event-collector/http-event-collector-rest-api-endpoints" target="_blank" rel="noopener"&gt;https://help.splunk.com/en/splunk-enterprise/get-started/get-data-in/9.3/get-data-with-http-event-collector/http-event-collector-rest-api-endpoints&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Event&lt;/STRONG&gt; endpoint:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;The event is pre-structured JSON — event boundaries are defined by the JSON structure itself&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;LINE_BREAKER and EVENT_BREAKER settings in props.conf do NOT apply because the JSON payload already defines what constitutes an event&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;However, other props. conf/transforms.conf rules from a TA will still apply if the sourcetype matches — specifically index-time transforms (field extractions, routing, etc.)&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;The sender controls metadata (host, source, sourcetype, index, time) directly in the JSON payload, and individual events in a batch can override token defaults independently&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Raw&lt;/STRONG&gt; endpoint:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Data is treated as raw, unstructured text — just like file-based inputs&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;LINE_BREAKER (regex-based) and EVENT_BREAKER (intelligent breaking) rules from props.conf fully apply for the assigned sourcetype, matching the behaviour of file-monitored inputs&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;The sourcetype is determined by the HEC token configuration, not the payload&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;If a TA installed on the HF has props.conf rules matching that sourcetype (e.g., SHOULD_LINEMERGE, TIME_FORMAT, INDEXED_EXTRACTIONS), those rules will run at index time&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;For batch raw JSON events, props.conf must be configured correctly — e.g., INDEXED_EXTRACTIONS = json for JSON arrays, or SHOULD_LINEMERGE = false for line-delimited events&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;A TA typically ships two types of config:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;props.conf / transforms.conf (index-time rules) — These apply on the HF only if the sourcetype of the incoming HEC data matches stanzas in the TA. With /raw, the full parsing pipeline runs (line breaking, timestamp parsing, field transforms). With /event, only the transforms/field extraction rules apply — not line breaking.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jul 2026 15:47:50 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762318#M120703</guid>
      <dc:creator>splunkreal</dc:creator>
      <dc:date>2026-07-17T15:47:50Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762324#M120704</link>
      <description>&lt;P&gt;This is not 100% true. Most is but not all.&lt;/P&gt;&lt;P&gt;With /event endpoint:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;The source _can_ provide index/source/sourcetype/host values but if it doesn't the input assumes the default values. Also if a source requests that event be sent to an index which is not allowed with the provided HEC token, the request will fail&lt;/LI&gt;&lt;LI&gt;Unless explicitly requested with a proper URI parameter, timestamp recognition does _not_ happen with /event endpoint. And even if you want Splunk to parse timestamp but provide one on your own, time parsing won't happen.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;For /raw endpoint:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;To be fully honest, I don't think I've ever tested it with a not-line-oriented sourcetype but I wouldn't be surprised if it did breaking on a per-line basis. But that's just my hunch. Might as well be as you're saying so just test it for yourself if you wanna rely on it. Most notably I'm not sure how the input will react to different parts of a multiline events sent with different HTTP requests. I would be very surprised if it had a way to "correlate" those two separate requests into a single line. So test before use!&lt;/LI&gt;&lt;LI&gt;You _can_ provide destination metadata with your request by means of URI parameters or custom headers. But you have to do it for a whole HTTP request, not for each single event separately.&lt;/LI&gt;&lt;/OL&gt;</description>
      <pubDate>Fri, 17 Jul 2026 14:05:44 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762324#M120704</guid>
      <dc:creator>PickleRick</dc:creator>
      <dc:date>2026-07-17T14:05:44Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762326#M120705</link>
      <description>&lt;P&gt;Thanks&amp;nbsp;&lt;a href="https://community.splunk.com/t5/user/viewprofilepage/user-id/231884"&gt;@PickleRick&lt;/a&gt;&amp;nbsp; for your reply, we use Kafka Connect for your information with event endpoint. The most important is HF addons in most case will apply parsing, fields extractions... however looks like timestamp will be controlled by Kafka.&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jul 2026 15:51:37 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762326#M120705</guid>
      <dc:creator>splunkreal</dc:creator>
      <dc:date>2026-07-17T15:51:37Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762327#M120706</link>
      <description>&lt;P&gt;Yup, but the rules regarding HEC are not Kafka-addon-specific &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jul 2026 15:53:22 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762327#M120706</guid>
      <dc:creator>PickleRick</dc:creator>
      <dc:date>2026-07-17T15:53:22Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762333#M120707</link>
      <description>&lt;P&gt;I think that's a really helpful summary. The biggest takeaway is that /event expects already-defined JSON events, so event breaking settings aren't used, while /raw goes through the normal parsing pipeline where props.conf settings like LINE_BREAKER and SHOULD_LINEMERGE matter. Keeping that distinction in mind makes it much easier to choose the right endpoint for your data.&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jul 2026 22:06:53 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762333#M120707</guid>
      <dc:creator>henry_collins</dc:creator>
      <dc:date>2026-07-17T22:06:53Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762339#M120708</link>
      <description>&lt;P&gt;That's also not entirely true. When you say "expects already-defined json events" one could interpret it as "you can only ingest events which are json structures using this endpoint" which is completely untrue. You can ingest any data you want, you just have to use the enpoint by means of sending appropriately formated json event containing the raw event as "event" field. See &lt;A href="https://help.splunk.com/en/data-management/get-data-in/get-data-into-splunk-enterprise/10.4/get-data-with-http-event-collector/format-events-for-http-event-collector" target="_blank"&gt;https://help.splunk.com/en/data-management/get-data-in/get-data-into-splunk-enterprise/10.4/get-data-with-http-event-collector/format-events-for-http-event-collector&lt;/A&gt;&amp;nbsp;for details.&lt;/P&gt;</description>
      <pubDate>Sat, 18 Jul 2026 10:58:47 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762339#M120708</guid>
      <dc:creator>PickleRick</dc:creator>
      <dc:date>2026-07-18T10:58:47Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762347#M120709</link>
      <description>/event uses pre-structured JSON, so line breaking is skipped. /raw follows the normal parsing pipeline, meaning props.conf settings like LINE_BREAKER and INDEXED_EXTRACTIONS apply. The key is ensuring the incoming sourcetype matches your TA configuration. Thanks for the clear explanation!</description>
      <pubDate>Sun, 19 Jul 2026 06:51:37 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762347#M120709</guid>
      <dc:creator>jasonmiller11tt</dc:creator>
      <dc:date>2026-07-19T06:51:37Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762357#M120710</link>
      <description>&lt;P&gt;Good points. I'd especially recommend testing /raw with multiline events before relying on it, as behavior across separate requests can be tricky. The note about /event only parsing timestamps when explicitly requested is also an important distinction.&lt;/P&gt;</description>
      <pubDate>Mon, 20 Jul 2026 08:13:17 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762357#M120710</guid>
      <dc:creator>cartergray70543</dc:creator>
      <dc:date>2026-07-20T08:13:17Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762365#M120711</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.splunk.com/t5/user/viewprofilepage/user-id/231884"&gt;@PickleRick&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We use /event endpoint, our Kafka expert told me he extracts the “message” field and sends it to our HEC through the connector. Does this mean HEC receives text or json events?&lt;/P&gt;&lt;P&gt;He also told me messages are delimited in json, providing source and sourcetype for instance however I understand we don’t control timestamp from Splunk’s side. It’s better than raw endpoint as otherwise he would need to add delimiter on the Vector’s agent source or hardcoded for network logs for example.&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;</description>
      <pubDate>Mon, 20 Jul 2026 11:47:30 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762365#M120711</guid>
      <dc:creator>splunkreal</dc:creator>
      <dc:date>2026-07-20T11:47:30Z</dc:date>
    </item>
    <item>
      <title>Re: Note about how HEC events are parsed based on the Endpoint configured</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762367#M120712</link>
      <description>&lt;P&gt;Well, I can't know how your Kafka pipeline is configured.&lt;/P&gt;&lt;P&gt;But the thing is that when you send events to the HEC endpoint they look like this (quote from the docs; a syntactically erroneous one since json doesn't allow comments &lt;span class="lia-unicode-emoji" title=":beaming_face_with_smiling_eyes:"&gt;😁&lt;/span&gt;)&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;{&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"time"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;1426279439&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;// epoch time&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"host"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"localhost"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"source"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"random-data-generator"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"sourcetype"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"my_sample_data"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"index"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"main"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"event"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt;  &lt;SPAN class=""&gt;"Hello world!"&lt;/SPAN&gt; 
&lt;SPAN class=""&gt;}&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;All fields except "event" are optional - if there is no time supplied, Splunk will assume current time (or if sent with ?auto_extract_timestamp=true it wil be parsed from the event); for the rest of the fields Splunk will assume the defaults defined for particular HEC token. You can also send additional indexed fields as a "fields" structure.&lt;/P&gt;&lt;P&gt;Judging from your descripiton I'd assume that whatever the "message" field on your Kafka side is, it's getting pushed as "event" field into the HEC input. But what is in your "message" field in Kafka - that I don't know.&lt;/P&gt;&lt;P&gt;And if you use /services/collector/event?auto_extract_timestamp=true and _not_ provide the "time" field, Splunk will parse the timestamp out of the event regarding to the normal settings for the sourcetype. Of course if you have a reliable timestamp at the Kafka level already, you can just as well send it as "time" field and save Splunk some time parsing it again &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 20 Jul 2026 13:28:23 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/Note-about-how-HEC-events-are-parsed-based-on-the-Endpoint/m-p/762367#M120712</guid>
      <dc:creator>PickleRick</dc:creator>
      <dc:date>2026-07-20T13:28:23Z</dc:date>
    </item>
  </channel>
</rss>

