<?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: Why are streamstats reset_after for streamstats aggregation not working? in Splunk Search</title>
    <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643946#M223087</link>
    <description>&lt;P&gt;OK it looks like it is because time_delta has a null value - try inserting this before the second streamstats&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| fillnull value=0 time_delta&lt;/LI-CODE&gt;</description>
    <pubDate>Fri, 19 May 2023 15:20:02 GMT</pubDate>
    <dc:creator>ITWhisperer</dc:creator>
    <dc:date>2023-05-19T15:20:02Z</dc:date>
    <item>
      <title>Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643906#M223075</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am trying to use Streamstats with Sum(value) and I want to reset that sum after it reaches a certain threshold (in the example below this threshold is 1000). The Splunk documentation states that "The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;eval-expression&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;can reference fields that are returned by the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;streamstats&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;command. "&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However it is completely ignoring my reset_after clause, any help is much appreciated. Example below:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;index=events
|table id,_time

|sort 0 -id, _time

|streamstats current=f reset_on_change=true last(_time) as last_seen by id

|eval time_delta=_time-last_seen

|sort 0 -id, _time

|streamstats reset_after="("running_time&amp;gt;=1000")" reset_on_change=true sum(time_delta) as running_time by id&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Splunk reference:&lt;/P&gt;&lt;P&gt;reset_after&lt;STRONG&gt;Syntax:&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;reset_after="("&amp;lt;eval-expression&amp;gt;")"&lt;STRONG&gt;Description:&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;After the streamstats calculations are produced for an event,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;reset_after&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;specifies that all of the accumulated statistics are reset if the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;eval-expression&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;returns&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;true. The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;eval-expression&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;must evaluate to true or false. The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;eval-expression&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;can reference fields that are returned by the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;streamstats&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;command. When the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;reset_after&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;argument is combined with the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;window&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;argument, the window is also reset when the accumulated statistics are reset.&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:33:42 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643906#M223075</guid>
      <dc:creator>patientsplunker</dc:creator>
      <dc:date>2023-05-19T14:33:42Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643918#M223076</link>
      <description>&lt;P&gt;reset_on_change is overriding reset_after - reset_on_change operates on the value of the field(s) in the by clause&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 13:49:00 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643918#M223076</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2023-05-19T13:49:00Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643920#M223077</link>
      <description>&lt;P&gt;Thank you for the response!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I removed the reset_on_change clause, however it is still ignoring my reset_after, the aggregate "running_time" grows past 1000 and keeps going for all rows. The reason I included the reset_on_change is because i also need it to reset after the id changes.&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;</description>
      <pubDate>Fri, 19 May 2023 13:58:07 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643920#M223077</guid>
      <dc:creator>patientsplunker</dc:creator>
      <dc:date>2023-05-19T13:58:07Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643928#M223078</link>
      <description>&lt;P&gt;It looks like the current=f is what is causing the issue - do you need that? Or can you subtract the time_delta from the running_time afterwards?&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:07:13 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643928#M223078</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2023-05-19T14:07:13Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643932#M223080</link>
      <description>&lt;P&gt;Are you implying the first streamstats pipe is interfering with the second stremstats pipe ?&lt;/P&gt;&lt;P&gt;The output of the first streamstats is exactly what I expect, and i need the current=f so because time_delta is the difference between the time of an event and the event before it.&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:17:15 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643932#M223080</guid>
      <dc:creator>patientsplunker</dc:creator>
      <dc:date>2023-05-19T14:17:15Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643934#M223082</link>
      <description>&lt;P&gt;Continued thanks for the help&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The current=f in the first streamstats pipe lets me determine the difference between an event the immediate preceeding event (time_delta), which is why i do the sort. The output of the first streamstats is exactly what I expect, and the second streamstats does not have current=f, so i'm confused if there is interplay between the two streamstats&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:24:37 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643934#M223082</guid>
      <dc:creator>patientsplunker</dc:creator>
      <dc:date>2023-05-19T14:24:37Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643935#M223083</link>
      <description>&lt;P&gt;Sorry, that was me misreading your code. Sometimes it is not easy to distinguish code from prose. It usually makes it clearer by including code in a code block&amp;lt;/&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:31:19 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643935#M223083</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2023-05-19T14:31:19Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643937#M223084</link>
      <description>&lt;P&gt;Updated to code block&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:35:18 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643937#M223084</guid>
      <dc:creator>patientsplunker</dc:creator>
      <dc:date>2023-05-19T14:35:18Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643938#M223085</link>
      <description>&lt;P&gt;I don't think you need the reset_on_change=t in the second streamstats because you have current=f in the first streamstats making time_delta null which effectively resets running_time.&lt;/P&gt;&lt;P&gt;However, this doesn't explain why reset_after isn't working - looks like a bug?&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:39:45 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643938#M223085</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2023-05-19T14:39:45Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643939#M223086</link>
      <description>&lt;P&gt;Definitely, looks like a bug. Here is a runanywhere example demonstrating the issue (although it uses random ids so may not show it every time).&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| gentimes start=-1 increment=1h
| rename starttime as _time 
| fields _time
| eval id=random()%3
| sort 0 -id _time
| streamstats current=f reset_on_change=t last(_time) as last_seen by id
| eval time_delta=_time-last_seen
| sort 0 -id _time
| streamstats reset_after="(sum(time_delta) &amp;gt; 10000)" sum(time_delta) by id&lt;/LI-CODE&gt;</description>
      <pubDate>Fri, 19 May 2023 14:52:55 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643939#M223086</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2023-05-19T14:52:55Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643946#M223087</link>
      <description>&lt;P&gt;OK it looks like it is because time_delta has a null value - try inserting this before the second streamstats&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| fillnull value=0 time_delta&lt;/LI-CODE&gt;</description>
      <pubDate>Fri, 19 May 2023 15:20:02 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643946#M223087</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2023-05-19T15:20:02Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643947#M223088</link>
      <description>&lt;P&gt;I appreciate the investigation, too bad it's a bug, essentially what im looking to accomplish is this, if you have any alternate ideas i would appreciate it.&lt;/P&gt;&lt;P&gt;starting dataset (this is after the sort)&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="25%"&gt;_time&lt;/TD&gt;&lt;TD width="12.5%"&gt;ID&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;100&lt;/TD&gt;&lt;TD width="12.5%"&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;1000&lt;/TD&gt;&lt;TD width="12.5%"&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;20000&lt;/TD&gt;&lt;TD width="12.5%"&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;22000&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;100&lt;/TD&gt;&lt;TD width="12.5%"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;400&lt;/TD&gt;&lt;TD width="12.5%"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5000&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5900&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7900&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;desired output:&lt;/P&gt;&lt;TABLE border="1" width="102.19596867515273%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="25%"&gt;_time&lt;/TD&gt;&lt;TD width="12.5%"&gt;ID&lt;/TD&gt;&lt;TD width="12.5%"&gt;last_seen&lt;/TD&gt;&lt;TD width="12.5%"&gt;time_delta&lt;/TD&gt;&lt;TD width="25%"&gt;running_time&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;100&lt;/TD&gt;&lt;TD width="12.5%"&gt;1&lt;/TD&gt;&lt;TD width="12.5%"&gt;null&lt;/TD&gt;&lt;TD width="12.5%"&gt;null&lt;/TD&gt;&lt;TD width="25%"&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;1000&lt;/TD&gt;&lt;TD width="12.5%"&gt;1&lt;/TD&gt;&lt;TD width="12.5%"&gt;100&lt;/TD&gt;&lt;TD width="12.5%"&gt;900&lt;/TD&gt;&lt;TD width="25%"&gt;900&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;20000&lt;/TD&gt;&lt;TD width="12.5%"&gt;1&lt;/TD&gt;&lt;TD width="12.5%"&gt;1000&lt;/TD&gt;&lt;TD width="12.5%"&gt;19000&lt;/TD&gt;&lt;TD width="25%"&gt;19900&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;22000&lt;/TD&gt;&lt;TD width="12.5%"&gt;1&lt;/TD&gt;&lt;TD width="12.5%"&gt;20000&lt;/TD&gt;&lt;TD width="12.5%"&gt;2000&lt;/TD&gt;&lt;TD width="25%"&gt;&lt;P&gt;2000&lt;/P&gt;&lt;P&gt;```this was reset since 1000 threshold crossed at 19900```&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;100&lt;/TD&gt;&lt;TD width="12.5%"&gt;2&lt;/TD&gt;&lt;TD width="12.5%"&gt;null&lt;/TD&gt;&lt;TD width="12.5%"&gt;null&lt;/TD&gt;&lt;TD width="25%"&gt;0 ```reset because the ID changed```&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;400&lt;/TD&gt;&lt;TD width="12.5%"&gt;2&lt;/TD&gt;&lt;TD width="12.5%"&gt;100&lt;/TD&gt;&lt;TD width="12.5%"&gt;300&lt;/TD&gt;&lt;TD width="25%"&gt;300&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;5000&lt;/TD&gt;&lt;TD width="12.5%"&gt;2&lt;/TD&gt;&lt;TD width="12.5%"&gt;400&lt;/TD&gt;&lt;TD width="12.5%"&gt;4600&lt;/TD&gt;&lt;TD width="25%"&gt;4900&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;6100&lt;/TD&gt;&lt;TD width="12.5%"&gt;2&lt;/TD&gt;&lt;TD width="12.5%"&gt;5000&lt;/TD&gt;&lt;TD width="12.5%"&gt;1100&lt;/TD&gt;&lt;TD width="25%"&gt;&lt;P&gt;1100&lt;/P&gt;&lt;P&gt;```this was reset since 1000 threshold crossed at 4900```&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="25%"&gt;7900&lt;/TD&gt;&lt;TD width="12.5%"&gt;2&lt;/TD&gt;&lt;TD width="12.5%"&gt;6000&lt;/TD&gt;&lt;TD width="12.5%"&gt;1900&lt;/TD&gt;&lt;TD width="25%"&gt;&lt;P&gt;1900&lt;/P&gt;&lt;P&gt;```this was reset since 1000 threshold crossed at 1100```&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 15:23:05 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643947#M223088</guid>
      <dc:creator>patientsplunker</dc:creator>
      <dc:date>2023-05-19T15:23:05Z</dc:date>
    </item>
    <item>
      <title>Re: Why are streamstats reset_after for streamstats aggregation not working?</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643955#M223089</link>
      <description>&lt;P&gt;I think this is working!&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 15:51:56 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Why-are-streamstats-reset-after-for-streamstats-aggregation-not/m-p/643955#M223089</guid>
      <dc:creator>patientsplunker</dc:creator>
      <dc:date>2023-05-19T15:51:56Z</dc:date>
    </item>
  </channel>
</rss>

