<?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 How to create transaction based on multiple extracted fields? in Splunk Search</title>
    <link>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152813#M42823</link>
    <description>&lt;P&gt;I am trying to create transactions out of following log data &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;2014-07-22 09:42:04.189 linguini.qualcomm.com: &amp;lt;send2mom version="4.0.7"&amp;gt;&amp;lt;alert destination="ALL"&amp;gt;&amp;lt;severity&amp;gt;critical&amp;lt;/severity&amp;gt;&amp;lt;kpiname&amp;gt;lanIf Bandwidth Utilization In&amp;lt;/kpiname&amp;gt;&amp;lt;target&amp;gt;EXT&amp;lt;/target&amp;gt;&amp;lt;targetparent&amp;gt;qc-markham1-gigabitethernet0/0/0-1&amp;lt;/targetparent&amp;gt;&amp;lt;errorcode /&amp;gt;&amp;lt;date&amp;gt;1406046310&amp;lt;/date&amp;gt;&amp;lt;eventsourcehost&amp;gt;linguini&amp;lt;/eventsourcehost&amp;gt;&amp;lt;eventsource&amp;gt;CONCORD&amp;lt;/eventsource&amp;gt;&amp;lt;message&amp;gt;qc-markham1-gigabitethernet0/0/0-1 EXT -- Bandwidth in over 90% -- qc-markham1 GigabitEthernet0/0/0-1-EXT&amp;lt;/message&amp;gt;&amp;lt;notifygroup&amp;gt;NETRS&amp;lt;/notifygroup&amp;gt;&amp;lt;/alert&amp;gt;&amp;lt;/send2mom&amp;gt;
2014-07-22 08:58:07.506 linguini.qualcomm.com: &amp;lt;send2mom version="4.0.7"&amp;gt;&amp;lt;alert destination="ALL"&amp;gt;&amp;lt;severity&amp;gt;normal&amp;lt;/severity&amp;gt;&amp;lt;kpiname&amp;gt;lanIf Bandwidth Utilization In&amp;lt;/kpiname&amp;gt;&amp;lt;target&amp;gt;EXT&amp;lt;/target&amp;gt;&amp;lt;targetparent&amp;gt;qc-markham1-gigabitethernet0/0/0-1&amp;lt;/targetparent&amp;gt;&amp;lt;errorcode /&amp;gt;&amp;lt;date&amp;gt;1406040715&amp;lt;/date&amp;gt;&amp;lt;eventsourcehost&amp;gt;linguini&amp;lt;/eventsourcehost&amp;gt;&amp;lt;eventsource&amp;gt;CONCORD&amp;lt;/eventsource&amp;gt;&amp;lt;message&amp;gt;qc-markham1-gigabitethernet0/0/0-1 EXT -- Bandwidth in over 90% -- qc-markham1 GigabitEthernet0/0/0-1-EXT&amp;lt;/message&amp;gt;&amp;lt;notifygroup&amp;gt;NETRS&amp;lt;/notifygroup&amp;gt;&amp;lt;/alert&amp;gt;&amp;lt;/send2mom&amp;gt;

2014-07-22 08:54:22.714 skinner.qualcomm.com: &amp;lt;send2mom version="4.0.7"&amp;gt;&amp;lt;alert destination="ALL"&amp;gt;&amp;lt;severity&amp;gt;critical&amp;lt;/severity&amp;gt;&amp;lt;kpiname&amp;gt;lanIf Bandwidth Utilization&amp;lt;/kpiname&amp;gt;&amp;lt;target&amp;gt;Vlan402&amp;lt;/target&amp;gt;&amp;lt;targetparent&amp;gt;san-transit-e&amp;lt;/targetparent&amp;gt;&amp;lt;errorcode /&amp;gt;&amp;lt;date&amp;gt;1406042837&amp;lt;/date&amp;gt;&amp;lt;eventsourcehost&amp;gt;skinner&amp;lt;/eventsourcehost&amp;gt;&amp;lt;eventsource&amp;gt;CONCORD&amp;lt;/eventsource&amp;gt;&amp;lt;message&amp;gt;BW over 80% -- san-transit-e Vlan402&amp;lt;/message&amp;gt;&amp;lt;notifygroup&amp;gt;NETRS&amp;lt;/notifygroup&amp;gt;&amp;lt;/alert&amp;gt;&amp;lt;/send2mom&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;Following is my base search &lt;/P&gt;

&lt;P&gt;&lt;CODE&gt;index= public60 source="/local/mnt/send2mom_server/logs/receiver.log" NETRS eventtype=alarm_notify | rex field=_raw "severity&amp;gt;(?&amp;lt;severity&amp;gt;.*)&amp;lt;/severity.*kpiname&amp;gt;(?&amp;lt;kpi&amp;gt;.*) Bandwidth.*&amp;lt;/kpiname.*target&amp;gt;(?&amp;lt;interface&amp;gt;.*)&amp;lt;/target.*targetparent&amp;gt;(?&amp;lt;device&amp;gt;.*)&amp;lt;/target.*Bandwidth in over (?&amp;lt;bandwidth&amp;gt;.*%) --"| search kpi = wanIf OR lanIf  | eval device_interface = device." - ".interface*&lt;/CODE&gt;&lt;/P&gt;

&lt;P&gt;What I am trying to do is create a transaction based on three extracted fields device-interface, bandwidth and severity. A transaction starts with either &lt;STRONG&gt;critical&lt;/STRONG&gt; or &lt;STRONG&gt;major&lt;/STRONG&gt; severity and ends with &lt;STRONG&gt;normal&lt;/STRONG&gt;  . &lt;/P&gt;

&lt;P&gt;I am able to device endswith and startswith but if I introduce fields=device_interface bandwidth option splunk error out with *&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;Error in 'transaction': The fields option is invalid when a list of fields is provided in the argument list.
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;Is there a way to use a list of fields to indicate transaction and use a different field to indicate start and end of transaction? &lt;/P&gt;</description>
    <pubDate>Tue, 22 Jul 2014 17:17:46 GMT</pubDate>
    <dc:creator>irfans</dc:creator>
    <dc:date>2014-07-22T17:17:46Z</dc:date>
    <item>
      <title>How to create transaction based on multiple extracted fields?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152813#M42823</link>
      <description>&lt;P&gt;I am trying to create transactions out of following log data &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;2014-07-22 09:42:04.189 linguini.qualcomm.com: &amp;lt;send2mom version="4.0.7"&amp;gt;&amp;lt;alert destination="ALL"&amp;gt;&amp;lt;severity&amp;gt;critical&amp;lt;/severity&amp;gt;&amp;lt;kpiname&amp;gt;lanIf Bandwidth Utilization In&amp;lt;/kpiname&amp;gt;&amp;lt;target&amp;gt;EXT&amp;lt;/target&amp;gt;&amp;lt;targetparent&amp;gt;qc-markham1-gigabitethernet0/0/0-1&amp;lt;/targetparent&amp;gt;&amp;lt;errorcode /&amp;gt;&amp;lt;date&amp;gt;1406046310&amp;lt;/date&amp;gt;&amp;lt;eventsourcehost&amp;gt;linguini&amp;lt;/eventsourcehost&amp;gt;&amp;lt;eventsource&amp;gt;CONCORD&amp;lt;/eventsource&amp;gt;&amp;lt;message&amp;gt;qc-markham1-gigabitethernet0/0/0-1 EXT -- Bandwidth in over 90% -- qc-markham1 GigabitEthernet0/0/0-1-EXT&amp;lt;/message&amp;gt;&amp;lt;notifygroup&amp;gt;NETRS&amp;lt;/notifygroup&amp;gt;&amp;lt;/alert&amp;gt;&amp;lt;/send2mom&amp;gt;
2014-07-22 08:58:07.506 linguini.qualcomm.com: &amp;lt;send2mom version="4.0.7"&amp;gt;&amp;lt;alert destination="ALL"&amp;gt;&amp;lt;severity&amp;gt;normal&amp;lt;/severity&amp;gt;&amp;lt;kpiname&amp;gt;lanIf Bandwidth Utilization In&amp;lt;/kpiname&amp;gt;&amp;lt;target&amp;gt;EXT&amp;lt;/target&amp;gt;&amp;lt;targetparent&amp;gt;qc-markham1-gigabitethernet0/0/0-1&amp;lt;/targetparent&amp;gt;&amp;lt;errorcode /&amp;gt;&amp;lt;date&amp;gt;1406040715&amp;lt;/date&amp;gt;&amp;lt;eventsourcehost&amp;gt;linguini&amp;lt;/eventsourcehost&amp;gt;&amp;lt;eventsource&amp;gt;CONCORD&amp;lt;/eventsource&amp;gt;&amp;lt;message&amp;gt;qc-markham1-gigabitethernet0/0/0-1 EXT -- Bandwidth in over 90% -- qc-markham1 GigabitEthernet0/0/0-1-EXT&amp;lt;/message&amp;gt;&amp;lt;notifygroup&amp;gt;NETRS&amp;lt;/notifygroup&amp;gt;&amp;lt;/alert&amp;gt;&amp;lt;/send2mom&amp;gt;

2014-07-22 08:54:22.714 skinner.qualcomm.com: &amp;lt;send2mom version="4.0.7"&amp;gt;&amp;lt;alert destination="ALL"&amp;gt;&amp;lt;severity&amp;gt;critical&amp;lt;/severity&amp;gt;&amp;lt;kpiname&amp;gt;lanIf Bandwidth Utilization&amp;lt;/kpiname&amp;gt;&amp;lt;target&amp;gt;Vlan402&amp;lt;/target&amp;gt;&amp;lt;targetparent&amp;gt;san-transit-e&amp;lt;/targetparent&amp;gt;&amp;lt;errorcode /&amp;gt;&amp;lt;date&amp;gt;1406042837&amp;lt;/date&amp;gt;&amp;lt;eventsourcehost&amp;gt;skinner&amp;lt;/eventsourcehost&amp;gt;&amp;lt;eventsource&amp;gt;CONCORD&amp;lt;/eventsource&amp;gt;&amp;lt;message&amp;gt;BW over 80% -- san-transit-e Vlan402&amp;lt;/message&amp;gt;&amp;lt;notifygroup&amp;gt;NETRS&amp;lt;/notifygroup&amp;gt;&amp;lt;/alert&amp;gt;&amp;lt;/send2mom&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;Following is my base search &lt;/P&gt;

&lt;P&gt;&lt;CODE&gt;index= public60 source="/local/mnt/send2mom_server/logs/receiver.log" NETRS eventtype=alarm_notify | rex field=_raw "severity&amp;gt;(?&amp;lt;severity&amp;gt;.*)&amp;lt;/severity.*kpiname&amp;gt;(?&amp;lt;kpi&amp;gt;.*) Bandwidth.*&amp;lt;/kpiname.*target&amp;gt;(?&amp;lt;interface&amp;gt;.*)&amp;lt;/target.*targetparent&amp;gt;(?&amp;lt;device&amp;gt;.*)&amp;lt;/target.*Bandwidth in over (?&amp;lt;bandwidth&amp;gt;.*%) --"| search kpi = wanIf OR lanIf  | eval device_interface = device." - ".interface*&lt;/CODE&gt;&lt;/P&gt;

&lt;P&gt;What I am trying to do is create a transaction based on three extracted fields device-interface, bandwidth and severity. A transaction starts with either &lt;STRONG&gt;critical&lt;/STRONG&gt; or &lt;STRONG&gt;major&lt;/STRONG&gt; severity and ends with &lt;STRONG&gt;normal&lt;/STRONG&gt;  . &lt;/P&gt;

&lt;P&gt;I am able to device endswith and startswith but if I introduce fields=device_interface bandwidth option splunk error out with *&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;Error in 'transaction': The fields option is invalid when a list of fields is provided in the argument list.
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;Is there a way to use a list of fields to indicate transaction and use a different field to indicate start and end of transaction? &lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2014 17:17:46 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152813#M42823</guid>
      <dc:creator>irfans</dc:creator>
      <dc:date>2014-07-22T17:17:46Z</dc:date>
    </item>
    <item>
      <title>Re: How to create transaction based on multiple extracted fields?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152814#M42824</link>
      <description>&lt;P&gt;Can you post your full search?&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2014 17:30:25 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152814#M42824</guid>
      <dc:creator>somesoni2</dc:creator>
      <dc:date>2014-07-22T17:30:25Z</dc:date>
    </item>
    <item>
      <title>Re: How to create transaction based on multiple extracted fields?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152815#M42825</link>
      <description>&lt;P&gt;Try it without using the "fields" keyword.  Instead, just list the fields you want to use immediately after the &lt;STRONG&gt;transaction&lt;/STRONG&gt; command.  Something like this:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;index= public60 source="/local/mnt/send2mom_server/logs/receiver.log" NETRS eventtype=alarm_notify 
| rex field=_raw "severity&amp;gt;(?&amp;lt;severity&amp;gt;.*)&amp;lt;/severity.*kpiname&amp;gt;(?&amp;lt;kpi&amp;gt;.*) Bandwidth.*&amp;lt;/kpiname.*target&amp;gt;(?&amp;lt;interface&amp;gt;.*)&amp;lt;/target.*targetparent&amp;gt;(?&amp;lt;device&amp;gt;.*)&amp;lt;/target.*Bandwidth in over (?&amp;lt;bandwidth&amp;gt;.*%) --"
| search kpi = wanIf OR lanIf  
| eval device_interface = device." - ".interface*
| transaction device_interface bandwidth option startswith="severity=critical OR severity=major" endswith="severity=normal"
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 22 Jul 2014 18:00:11 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152815#M42825</guid>
      <dc:creator>wpreston</dc:creator>
      <dc:date>2014-07-22T18:00:11Z</dc:date>
    </item>
    <item>
      <title>Re: How to create transaction based on multiple extracted fields?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152816#M42826</link>
      <description>&lt;P&gt;Thank you this is exactly what I was missing.&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2014 18:25:13 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-create-transaction-based-on-multiple-extracted-fields/m-p/152816#M42826</guid>
      <dc:creator>irfans</dc:creator>
      <dc:date>2014-07-22T18:25:13Z</dc:date>
    </item>
  </channel>
</rss>

