<?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: Stats with Join in Splunk Search</title>
    <link>https://community.splunk.com/t5/Splunk-Search/Stats-with-Join/m-p/526697#M148664</link>
    <description>&lt;P&gt;Assuming there is a typo in your example (host D Nut should be msgCode 103?)&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| eval version=if(msgCode="101",msgText,null)
| eventstats values(version) as version by host
| where msgCode!="101" AND version="1.0.0"
| stats sum(qty) as total by msgText&lt;/LI-CODE&gt;</description>
    <pubDate>Tue, 27 Oct 2020 19:01:50 GMT</pubDate>
    <dc:creator>ITWhisperer</dc:creator>
    <dc:date>2020-10-27T19:01:50Z</dc:date>
    <item>
      <title>Stats with Join</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Stats-with-Join/m-p/526692#M148663</link>
      <description>&lt;P&gt;I have set of hosts that are installed with different versions of software but logging to the same index, and I need to create a report based on specific versions. Here is an example set of data that I have to deal with.&lt;/P&gt;&lt;TABLE width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;host&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;msgCode&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;msgText&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;qty&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;A&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1.0.0&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;A&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Nut&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;48&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;A&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Widget&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;289&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;B&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1.1.0&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;B&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Nut&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;69&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;B&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Widget&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;367&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;C&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1.0.0&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;C&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Nut&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;93&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;C&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Widget&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;433&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;D&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1.0.3&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;D&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Nut&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;74&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;D&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;192&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;E&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1.0.0&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;E&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Nut&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;88&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;E&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Widget&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;225&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;BR /&gt;Given this set of data, I would like to get the sum of qty for the hosts that have msgCode=1.0.0. The caveat on this is that msgCode 101 is logged sporadically every couple of days, and when the host gets updated with the newer version,&amp;nbsp; so I only want to use the most recently logged value as is the case with host B. As such, the result should be something like the following which only sum qty values from hosts A, C E:&lt;/P&gt;&lt;TABLE width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Nut&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;229&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Widget&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;947&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can do sum of all qty, but I am not sure how I can filter out host B from it. I was doing something like the following, but then, I just get the result from the sub query.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;index=myIndex 
| eventstats sum(qty) by msgCode as partSum 
| table msgCode, partSum 
| join host type=inner [ search index=myIndex msgCode=101 msgText=1.0.0 earliest=-3d | stats count by host ]&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 27 Oct 2020 18:36:57 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Stats-with-Join/m-p/526692#M148663</guid>
      <dc:creator>doppiolover</dc:creator>
      <dc:date>2020-10-27T18:36:57Z</dc:date>
    </item>
    <item>
      <title>Re: Stats with Join</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Stats-with-Join/m-p/526697#M148664</link>
      <description>&lt;P&gt;Assuming there is a typo in your example (host D Nut should be msgCode 103?)&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| eval version=if(msgCode="101",msgText,null)
| eventstats values(version) as version by host
| where msgCode!="101" AND version="1.0.0"
| stats sum(qty) as total by msgText&lt;/LI-CODE&gt;</description>
      <pubDate>Tue, 27 Oct 2020 19:01:50 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Stats-with-Join/m-p/526697#M148664</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2020-10-27T19:01:50Z</dc:date>
    </item>
    <item>
      <title>Re: Stats with Join</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Stats-with-Join/m-p/526705#M148668</link>
      <description>&lt;P&gt;Thanks. Yes, that's a typo since I was making up the data. I will play around with your suggestion.&lt;/P&gt;</description>
      <pubDate>Tue, 27 Oct 2020 19:25:45 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Stats-with-Join/m-p/526705#M148668</guid>
      <dc:creator>doppiolover</dc:creator>
      <dc:date>2020-10-27T19:25:45Z</dc:date>
    </item>
  </channel>
</rss>

