<?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: How to make multivalue fields parse in props.conf and transforms.conf? in Getting Data In</title>
    <link>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257897#M49563</link>
    <description>&lt;P&gt;Try removing SOURCE_KEY from both the MV field extraction. It should be able to extract based off raw data as well. &lt;/P&gt;</description>
    <pubDate>Mon, 23 Jan 2017 19:17:15 GMT</pubDate>
    <dc:creator>somesoni2</dc:creator>
    <dc:date>2017-01-23T19:17:15Z</dc:date>
    <item>
      <title>How to make multivalue fields parse in props.conf and transforms.conf?</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257896#M49562</link>
      <description>&lt;P&gt;So I've gotten stuck trying to get multivalue field working.&lt;/P&gt;

&lt;P&gt;I have, in general, two type of events.&lt;/P&gt;

&lt;P&gt;The first:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;Jan 20 16:46:47 1.11.2.23 xsuite[30512]: Source IP: 1.11.2.2, Nat/Proxy IP: 1.11.2.2, User: CN=Bugs Bunny+UID=1111111,OU=Warner Bros,O=Acme,C=US, Transaction: connection, Address: 1.11.2.1, Device name: car.toon.LOCAL, Port: 3389, Access/Protocol: RDP, Service/App: - -, Details: xsuite[30512]: CN=Bugs Bunny+UID=1111111,OU=Warner Bros,O=Acme,C=US connected to 1.11.2.1:3389; Idle time out: 900;
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;and the second:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;Jan 20 16:35:32 1.11.2.23 gkpsyslog[11895]: Private IP: , Public IP: , Nat/Proxy IP: 1.11.2.2, User: unknown, Transaction: login, Address: - -, Device Name: - -, User Group: --Port: - -, Access/Protocol: - -, Service/App: - -, Details: Message 18007:  Email alert sent to user Bugs Bunny+UID=1111111,OU=Warner Bros,O=Acme,C=US:  Message 18016:  User Bugs Bunny+UID=1111111,OU=Warner Bros,O=Acme,C=US has logged into the CA Privileged Access Manager appliance car.toon.local.
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;The following search works pretty well parsing all the fields including the multivalue fields:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;index="xceedium" | rex field=_raw "User: (?&amp;lt;user&amp;gt;[^(|^,]*)()" | rex field=_raw "Details: (?&amp;lt;Details&amp;gt;.+)" | rex max_match=10 field=Details "Message (?&amp;lt;message_id&amp;gt;\d+):" | rex max_match=10 field=Details "Message \d+:(?&amp;lt;message&amp;gt;.+?)(:|$)" | rex field=_raw "Service/App: (?&amp;lt;ServiceApp&amp;gt;[^,]*)" | rex field=_raw "Access/Protocol: (?&amp;lt;AccessProtocol&amp;gt;[^,]*)" | rex field=_raw "User Group: (?&amp;lt;group&amp;gt;.+?)Port" | rex field=_raw "Port: (?&amp;lt;port&amp;gt;[^,]*)" | rex field=_raw "Transaction: (?&amp;lt;Transaction&amp;gt;[^,]*),\s+Address: (?&amp;lt;Address&amp;gt;[^,]*),\s+Device (name|Name): (?&amp;lt;DeviceName&amp;gt;[^,]*)" | rex field=_raw "Private IP: (?&amp;lt;priv_ip&amp;gt;[^,]*),\s+Public IP: (?&amp;lt;pub_ip&amp;gt;[^,]*),\s+Nat/Proxy IP: (?&amp;lt;Nat_ProxyIP&amp;gt;[^,]*)" | rex field=_raw "Source IP: (?&amp;lt;src&amp;gt;[^,]*),"
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;but I can't get the props.conf and transforms.conf correctly set up to do the same for the multivalue fields.  The multivalue fields don't parse out.&lt;/P&gt;

&lt;P&gt;I've been looking at the following:&lt;/P&gt;

&lt;P&gt;&lt;A href="https://answers.splunk.com/answers/112311/multi-value-field-extraction.html"&gt;https://answers.splunk.com/answers/112311/multi-value-field-extraction.html&lt;/A&gt;&lt;BR /&gt;
&lt;A href="http://docs.splunk.com/Documentation/Splunk/6.0/Knowledge/Configureadvancedextractionswithfieldtransforms"&gt;http://docs.splunk.com/Documentation/Splunk/6.0/Knowledge/Configureadvancedextractionswithfieldtransforms&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;the source is udp:22514 and the sourcetype is xml.  The logs are sent  to a Heavy Forwarder, which sends to my two indexes.  &lt;/P&gt;

&lt;P&gt;Currently, I have the props.conf and transforms.conf configured on the search head.&lt;/P&gt;

&lt;P&gt;here is the section of my props.conf for this:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;[source::udp:22514]
EXTRACT-user = User: (?&amp;lt;user&amp;gt;[^(|^,]*)()
EXTRACT-ServiceApp = Service/App: (?&amp;lt;ServiceApp&amp;gt;[^,]*)
EXTRACT-AccessProtocol = Access/Protocol: (?&amp;lt;AccessProtocol&amp;gt;[^,]*)
EXTRACT-group = User Group: (?&amp;lt;group&amp;gt;.+?)Port
EXTRACT-port = Port: (?&amp;lt;port&amp;gt;[^,]*)
EXTRACT-Transaction,Address,DeviceName = Transaction: (?&amp;lt;Transaction&amp;gt;[^,]*),\s+Address: (?&amp;lt;Address&amp;gt;[^,]*),\s+Device (name|Name): (?&amp;lt;DeviceName&amp;gt;[^,]*)
EXTRACT-priv_ip,pub_ip = Private IP: (?&amp;lt;priv_ip&amp;gt;[^,]*),
EXTRACT-pub_ip = Public IP: (?&amp;lt;pub_ip&amp;gt;[^,]*),
EXTRACT-nat_proxyIP = Nat/Proxy IP: (?&amp;lt;nat_proxyIP&amp;gt;[^,]*)
EXTRACT-src = Source IP: (?&amp;lt;src&amp;gt;[^,]*),
#EXTRACT-Details = Details: (?&amp;lt;Details&amp;gt;.+)
TRANSFORMS-Details = Details
TRANSFORMS-message_id = message_id
TRANSFORMS-message = message
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;and here is the section of my transforms.conf:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;[Details]
REGEX = Details: (?&amp;lt;Details&amp;gt;.+)
FORMAT = Details::$1

[message_id]
SOURCE_KEY = Details
REGEX = Message (?&amp;lt;message_id&amp;gt;\d+):
FORMAT = message_id::$1
MV_ADD = true

[message]
SOURCE_KEY = Details
REGEX = Message \d+:(?&amp;lt;message&amp;gt;.+?)(:|$)
FORMAT = message::$1
MV_ADD = true
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;Do I need to create a fields.conf? &lt;/P&gt;

&lt;P&gt;&lt;A href="https://docs.splunk.com/Documentation/Splunk/6.5.1/Knowledge/ConfigureSplunktoparsemulti-valuefields"&gt;https://docs.splunk.com/Documentation/Splunk/6.5.1/Knowledge/ConfigureSplunktoparsemulti-valuefields&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;If so, can I get some help with the syntax?  The example they give doesn't mesh in my mind with what I'm dealing with....&lt;/P&gt;

&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Mon, 23 Jan 2017 18:48:12 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257896#M49562</guid>
      <dc:creator>reswob4</dc:creator>
      <dc:date>2017-01-23T18:48:12Z</dc:date>
    </item>
    <item>
      <title>Re: How to make multivalue fields parse in props.conf and transforms.conf?</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257897#M49563</link>
      <description>&lt;P&gt;Try removing SOURCE_KEY from both the MV field extraction. It should be able to extract based off raw data as well. &lt;/P&gt;</description>
      <pubDate>Mon, 23 Jan 2017 19:17:15 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257897#M49563</guid>
      <dc:creator>somesoni2</dc:creator>
      <dc:date>2017-01-23T19:17:15Z</dc:date>
    </item>
    <item>
      <title>Re: How to make multivalue fields parse in props.conf and transforms.conf?</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257898#M49564</link>
      <description>&lt;P&gt;Changed to &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt; [message_id]
 REGEX = Message (?&amp;lt;message_id&amp;gt;\d+):
 FORMAT = message_id::$1
 MV_ADD = true

 [message]
 REGEX = Message \d+:(?&amp;lt;message&amp;gt;.+?)(:|$)
 FORMAT = message::$1
 MV_ADD = true
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;and to &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt; [message_id]
 SOURCE_KEY = _raw
 REGEX = Message (?&amp;lt;message_id&amp;gt;\d+):
 FORMAT = message_id::$1
 MV_ADD = true

 [message]
 SOURCE_KEY = _raw
 REGEX = Message \d+:(?&amp;lt;message&amp;gt;.+?)(:|$)
 FORMAT = message::$1
 MV_ADD = true
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;neither worked.&lt;/P&gt;

&lt;P&gt;At least right away.....&lt;/P&gt;</description>
      <pubDate>Mon, 23 Jan 2017 21:07:24 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257898#M49564</guid>
      <dc:creator>reswob4</dc:creator>
      <dc:date>2017-01-23T21:07:24Z</dc:date>
    </item>
    <item>
      <title>Re: How to make multivalue fields parse in props.conf and transforms.conf?</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257899#M49565</link>
      <description>&lt;P&gt;Also, change the &lt;CODE&gt;TRANSFORM-&lt;/CODE&gt; to &lt;CODE&gt;REPORT-&lt;/CODE&gt;. This is a search-time field extraction and should be REPORT not TRANSFORM which is for index-time field extraction. (in props.conf)&lt;/P&gt;</description>
      <pubDate>Mon, 23 Jan 2017 21:10:26 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257899#M49565</guid>
      <dc:creator>somesoni2</dc:creator>
      <dc:date>2017-01-23T21:10:26Z</dc:date>
    </item>
    <item>
      <title>Re: How to make multivalue fields parse in props.conf and transforms.conf?</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257900#M49566</link>
      <description>&lt;P&gt;SWEET. &lt;/P&gt;

&lt;P&gt;That was it.&lt;/P&gt;

&lt;P&gt;Final config for props.conf:&lt;/P&gt;

&lt;P&gt;props.conf:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt; [source::udp:22514]
 EXTRACT-user = User: (?[^(|^,]*)()
 EXTRACT-ServiceApp = Service/App: (?[^,]*)
 EXTRACT-AccessProtocol = Access/Protocol: (?[^,]*)
 EXTRACT-group = User Group: (?.+?)Port
 EXTRACT-port = Port: (?[^,]*)
 EXTRACT-Transaction,Address,DeviceName = Transaction: (?[^,]*),\s+Address: (?[^,]*),\s+Device (name|Name): (?[^,]*)
 EXTRACT-priv_ip,pub_ip = Private IP: (?[^,]*),
 EXTRACT-pub_ip = Public IP: (?[^,]*),
 EXTRACT-nat_proxyIP = Nat/Proxy IP: (?[^,]*)
 EXTRACT-src = Source IP: (?[^,]*),
 #EXTRACT-Details = Details: (?.+)
 REPORT-Details = Details
 REPORT-message_id = message_id
 REPORT-message = message
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;Final config for transforms.conf:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;  [message_id]
  REGEX = Message (?\d+):
  FORMAT = message_id::$1
  MV_ADD = true

  [message]
  REGEX = Message \d+:(?.+?)(:|$)
  FORMAT = message::$1
  MV_ADD = true
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;Could you actually ANSWER my question so I can mark this as answered and you get cred?&lt;/P&gt;

&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Mon, 23 Jan 2017 21:19:46 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/How-to-make-multivalue-fields-parse-in-props-conf-and-transforms/m-p/257900#M49566</guid>
      <dc:creator>reswob4</dc:creator>
      <dc:date>2017-01-23T21:19:46Z</dc:date>
    </item>
  </channel>
</rss>

