<?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 does the pairing work in a transaction? in Splunk Search</title>
    <link>https://community.splunk.com/t5/Splunk-Search/How-does-the-pairing-work-in-a-transaction/m-p/475050#M133544</link>
    <description>&lt;P&gt;This one relates to &lt;A href="https://answers.splunk.com/answers/770654/how-can-we-deal-with-a-negation-of-a-transaction.html"&gt;How can we deal with a negation of a transaction?&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;We have this code - &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt; (index=wineventlog  OR 
 (index=checkpoint action=Accept) 
 | eval destination_ip = coalesce(Source_Network_Address,dest_ip) 
 | eval action-{index}= action 
 | eval src-{index}= src 
 | transaction destination_ip maxspan=60s startswith=action-checkpoint="Accept" endswith=action-wineventlog="success" keeporphans=1 unifyends=1 
 | search src-wineventlog = * AND src-checkpoint = * 
 | lookup(s) ....
 | table &amp;lt;fields&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;We end up with one event from &lt;EM&gt;checkpoint&lt;/EM&gt; bound in the transaction to one event from &lt;EM&gt;wineventlog&lt;/EM&gt;. Meaning, each transaction is of two events from the two indexes. However, we realize that for one event from &lt;EM&gt;checkpoint&lt;/EM&gt;, there are 12 possible candidates from &lt;EM&gt;wineventlog&lt;/EM&gt;. All these 12 events stratify the criteria. So, how does the transaction command pick one of these 12 events? Is there logic for the choice?&lt;/P&gt;</description>
    <pubDate>Tue, 10 Sep 2019 17:10:55 GMT</pubDate>
    <dc:creator>danielbb</dc:creator>
    <dc:date>2019-09-10T17:10:55Z</dc:date>
    <item>
      <title>How does the pairing work in a transaction?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-does-the-pairing-work-in-a-transaction/m-p/475050#M133544</link>
      <description>&lt;P&gt;This one relates to &lt;A href="https://answers.splunk.com/answers/770654/how-can-we-deal-with-a-negation-of-a-transaction.html"&gt;How can we deal with a negation of a transaction?&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;We have this code - &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt; (index=wineventlog  OR 
 (index=checkpoint action=Accept) 
 | eval destination_ip = coalesce(Source_Network_Address,dest_ip) 
 | eval action-{index}= action 
 | eval src-{index}= src 
 | transaction destination_ip maxspan=60s startswith=action-checkpoint="Accept" endswith=action-wineventlog="success" keeporphans=1 unifyends=1 
 | search src-wineventlog = * AND src-checkpoint = * 
 | lookup(s) ....
 | table &amp;lt;fields&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;We end up with one event from &lt;EM&gt;checkpoint&lt;/EM&gt; bound in the transaction to one event from &lt;EM&gt;wineventlog&lt;/EM&gt;. Meaning, each transaction is of two events from the two indexes. However, we realize that for one event from &lt;EM&gt;checkpoint&lt;/EM&gt;, there are 12 possible candidates from &lt;EM&gt;wineventlog&lt;/EM&gt;. All these 12 events stratify the criteria. So, how does the transaction command pick one of these 12 events? Is there logic for the choice?&lt;/P&gt;</description>
      <pubDate>Tue, 10 Sep 2019 17:10:55 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-does-the-pairing-work-in-a-transaction/m-p/475050#M133544</guid>
      <dc:creator>danielbb</dc:creator>
      <dc:date>2019-09-10T17:10:55Z</dc:date>
    </item>
    <item>
      <title>Re: How does the pairing work in a transaction?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-does-the-pairing-work-in-a-transaction/m-p/475051#M133545</link>
      <description>&lt;P&gt;Splunk will use the first &lt;CODE&gt;action-checkpoint="Accept"&lt;/CODE&gt; for an destination_ip and pair it with whatever data it finds in between using the same destination_ip till the first &lt;CODE&gt;action-wineventlog="success"&lt;/CODE&gt; with that same destination_ip&lt;BR /&gt;
in your case  after 60s if it doesn't find a &lt;CODE&gt;action-wineventlog="success"&lt;/CODE&gt;it will consider it an orphan transaction. The logic here is time based.&lt;/P&gt;

&lt;P&gt;If you want to check all the end possibilities consider using &lt;CODE&gt;|stats&lt;/CODE&gt; instead of &lt;CODE&gt;|transaction&lt;/CODE&gt;. Not only you can probably accomplish the same task, but you'll get way better performance doing it. &lt;/P&gt;</description>
      <pubDate>Wed, 30 Sep 2020 02:06:25 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-does-the-pairing-work-in-a-transaction/m-p/475051#M133545</guid>
      <dc:creator>diogofgm</dc:creator>
      <dc:date>2020-09-30T02:06:25Z</dc:date>
    </item>
    <item>
      <title>Re: How does the pairing work in a transaction?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-does-the-pairing-work-in-a-transaction/m-p/475052#M133546</link>
      <description>&lt;P&gt;It does make sense.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Sep 2019 17:27:24 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-does-the-pairing-work-in-a-transaction/m-p/475052#M133546</guid>
      <dc:creator>danielbb</dc:creator>
      <dc:date>2019-09-10T17:27:24Z</dc:date>
    </item>
  </channel>
</rss>

