<?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 Untable data form a search used to compute an average duration from events with 2 dates in Splunk Search</title>
    <link>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307613#M164695</link>
    <description>&lt;P&gt;I have the following SPL that is used to compute an average duration from events with 2 dates for the last 3 months. &lt;BR /&gt;
(I WILL MAKE SOME IMPROVEMENTS ON TIME FOR EFFICIENCY BUT THIS IS AN EXAMPLE)&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;index="db_index" sourcetype="JDBC_D" (CREATED_DATE=* AND RESOLUTION_DATE=*) (SEVERITY="Severity 1" OR SEVERITY="Severity 2") (DEF_PHASE_FOUND="Integrated Systems Test (IST)")
| eval x_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S")
| eval RESOLUTION_DATE_YYYYMM=strftime(x_time,"%Y-%m")
| where RESOLUTION_DATE_YYYYMM&amp;gt;="2017-06" AND RESOLUTION_DATE_YYYYMM&amp;lt;="2017-11"
| eval CREATED_DATE_time=strptime(CREATED_DATE,"%d-%b-%Y %H:%M:%S"), RESOLUTION_DATE_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S")
| eval RESOLVE_DURATION = (RESOLUTION_DATE_time-CREATED_DATE_time)/3600
| eventstats max(RESOLUTION_DATE_time) as max_RESOLUTION_DATE_time by DEFECT_ID RESOLUTION_DATE_YYYYMM
| where RESOLUTION_DATE_time=max_RESOLUTION_DATE_time
| eventstats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_YTD
| stats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_MTD by RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_YTD
| sort RESOLUTION_DATE_YYYYMM
| tail 3
| eval TEAM="IST", REPORT="MTTRetest"
| lookup ATT_CPVT__REPORTS TEAM AS TEAM REPORT AS REPORT OUTPUT BENCHMARK AS BENCHMARK TARGET AS TARGET DESCRIPTION AS DESCRIPTION
| eval BENCHMARK=split(BENCH)
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;which gives me &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;MONTH       avg_RESOLVE_DURATION_MTD .     avg_RESOLVE_DURATION_YTD       TARGET
2017-11 .     15.1                                   13.1                  10
2017-10 .     10.3                                      13.1               10
2017-09 .      7.1                                        13.1              10
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;AND I WANT TO TABLE THE DATA AS&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;REPORT TARGET . 2017-09       2017-10 .     2017-10 .     YTD_AVERAGE
MTTR .   10 .           7.1 .              10.3              15.1 .           13.1
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;I have been working through untable and some stats formats but cannot seem to get this working. &lt;/P&gt;</description>
    <pubDate>Wed, 29 Nov 2017 18:23:04 GMT</pubDate>
    <dc:creator>timcolpo</dc:creator>
    <dc:date>2017-11-29T18:23:04Z</dc:date>
    <item>
      <title>Untable data form a search used to compute an average duration from events with 2 dates</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307613#M164695</link>
      <description>&lt;P&gt;I have the following SPL that is used to compute an average duration from events with 2 dates for the last 3 months. &lt;BR /&gt;
(I WILL MAKE SOME IMPROVEMENTS ON TIME FOR EFFICIENCY BUT THIS IS AN EXAMPLE)&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;index="db_index" sourcetype="JDBC_D" (CREATED_DATE=* AND RESOLUTION_DATE=*) (SEVERITY="Severity 1" OR SEVERITY="Severity 2") (DEF_PHASE_FOUND="Integrated Systems Test (IST)")
| eval x_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S")
| eval RESOLUTION_DATE_YYYYMM=strftime(x_time,"%Y-%m")
| where RESOLUTION_DATE_YYYYMM&amp;gt;="2017-06" AND RESOLUTION_DATE_YYYYMM&amp;lt;="2017-11"
| eval CREATED_DATE_time=strptime(CREATED_DATE,"%d-%b-%Y %H:%M:%S"), RESOLUTION_DATE_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S")
| eval RESOLVE_DURATION = (RESOLUTION_DATE_time-CREATED_DATE_time)/3600
| eventstats max(RESOLUTION_DATE_time) as max_RESOLUTION_DATE_time by DEFECT_ID RESOLUTION_DATE_YYYYMM
| where RESOLUTION_DATE_time=max_RESOLUTION_DATE_time
| eventstats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_YTD
| stats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_MTD by RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_YTD
| sort RESOLUTION_DATE_YYYYMM
| tail 3
| eval TEAM="IST", REPORT="MTTRetest"
| lookup ATT_CPVT__REPORTS TEAM AS TEAM REPORT AS REPORT OUTPUT BENCHMARK AS BENCHMARK TARGET AS TARGET DESCRIPTION AS DESCRIPTION
| eval BENCHMARK=split(BENCH)
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;which gives me &lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;MONTH       avg_RESOLVE_DURATION_MTD .     avg_RESOLVE_DURATION_YTD       TARGET
2017-11 .     15.1                                   13.1                  10
2017-10 .     10.3                                      13.1               10
2017-09 .      7.1                                        13.1              10
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;AND I WANT TO TABLE THE DATA AS&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;REPORT TARGET . 2017-09       2017-10 .     2017-10 .     YTD_AVERAGE
MTTR .   10 .           7.1 .              10.3              15.1 .           13.1
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;I have been working through untable and some stats formats but cannot seem to get this working. &lt;/P&gt;</description>
      <pubDate>Wed, 29 Nov 2017 18:23:04 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307613#M164695</guid>
      <dc:creator>timcolpo</dc:creator>
      <dc:date>2017-11-29T18:23:04Z</dc:date>
    </item>
    <item>
      <title>Re: Untable data form a search used to compute an average duration from events with 2 dates</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307614#M164696</link>
      <description>&lt;P&gt;Give this a try&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;index="db_index" sourcetype="JDBC_D" (CREATED_DATE=* AND RESOLUTION_DATE=*) (SEVERITY="Severity 1" OR SEVERITY="Severity 2") (DEF_PHASE_FOUND="Integrated Systems Test (IST)")
| eval x_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S")
| eval RESOLUTION_DATE_YYYYMM=strftime(x_time,"%Y-%m")
| where RESOLUTION_DATE_YYYYMM&amp;gt;="2017-06" AND RESOLUTION_DATE_YYYYMM&amp;lt;="2017-11"
| eval CREATED_DATE_time=strptime(CREATED_DATE,"%d-%b-%Y %H:%M:%S"), RESOLUTION_DATE_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S")
| eval RESOLVE_DURATION = (RESOLUTION_DATE_time-CREATED_DATE_time)/3600
| eventstats max(RESOLUTION_DATE_time) as max_RESOLUTION_DATE_time by DEFECT_ID RESOLUTION_DATE_YYYYMM
| where RESOLUTION_DATE_time=max_RESOLUTION_DATE_time
| eventstats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_YTD
| stats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_MTD by RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_YTD
| sort RESOLUTION_DATE_YYYYMM
| tail 3
| eval TEAM="IST", REPORT="MTTRetest"
| lookup ATT_CPVT__REPORTS TEAM AS TEAM REPORT AS REPORT OUTPUT TARGET AS TARGET
| table REPORT TARGET RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_MTD avg_RESOLVE_DURATION_YTD
| appendpipe [stats values(TARGET) as avg_RESOLVE_DURATION_MTD by REPORT | eval RESOLUTION_DATE_YYYYMM="TARGET" ]
| appendpipe [stats values(avg_RESOLVE_DURATION_YTD) as avg_RESOLVE_DURATION_MTD by REPORT | eval RESOLUTION_DATE_YYYYMM="avg_RESOLVE_DURATION_YTD" ]
| table REPORT RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_MTD
| xyseries REPORT RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_MTD 
| table REPORT TARGET 2* avg_RESOLVE_DURATION_YTD
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 29 Nov 2017 21:27:47 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307614#M164696</guid>
      <dc:creator>somesoni2</dc:creator>
      <dc:date>2017-11-29T21:27:47Z</dc:date>
    </item>
    <item>
      <title>Re: Untable data form a search used to compute an average duration from events with 2 dates</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307615#M164697</link>
      <description>&lt;P&gt;Building from you already have...&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;| makeresults 
| eval raw="2017-11 15.1 13.1 10::2017-10 10.3 13.1 10::2017-09 7.1 13.1 10"
| makemv delim="::" raw
| mvexpand raw
| rename raw AS _raw
| rex "^(?&amp;lt;MONTH&amp;gt;\S+)\s+(?&amp;lt;avg_RESOLVE_DURATION_MTD&amp;gt;\S+)\s+(?&amp;lt;avg_RESOLVE_DURATION_YTD&amp;gt;\S+)\s+(?&amp;lt;TARGET&amp;gt;\S+)"
| fields - _time _raw

| rename COMMENT AS "Everything above generates sample events; everything below is your add-on solution"

| eval key = avg_RESOLVE_DURATION_YTD . " " . TARGET
| fields - avg_RESOLVE_DURATION_YTD TARGET
| xyseries key MONTH avg_RESOLVE_DURATION_MTD
| rex field=key "^(?&amp;lt;YTD_AVERAGE&amp;gt;\S+)\s+(?&amp;lt;TARGET&amp;gt;\S+)$"
| eval REPORT="MTTR"
| table REPORT TARGET 2* YTD_AVERAGE
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 30 Nov 2017 00:46:39 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307615#M164697</guid>
      <dc:creator>woodcock</dc:creator>
      <dc:date>2017-11-30T00:46:39Z</dc:date>
    </item>
    <item>
      <title>Re: Untable data form a search used to compute an average duration from events with 2 dates</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307616#M164698</link>
      <description>&lt;P&gt;Thank you. I did manage to find a way to do but I do not like it. Part of the problem is that addressing the specific 3 columns is subjective. In order to order the table I had to code&lt;BR /&gt;
| fields TEAM REPORT DESCRIPTION BENCHMARK TARGET * "AVERAGE RESOLVE DURATION YTD"&lt;/P&gt;

&lt;P&gt;The following is the SPL that achieves the goal and I will also take a look at the solutions and ideas provided.&lt;/P&gt;

&lt;P&gt;index="db_index" sourcetype="JDBC_defects" (CREATED_DATE=* AND RESOLUTION_DATE=&lt;EM&gt;) (SEVERITY="Severity 1" OR SEVERITY="Severity 2") (DEF_PHASE_FOUND="Integrated Systems Test (IST)") &lt;BR /&gt;
| eval x_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S") &lt;BR /&gt;
| eval RESOLUTION_DATE_YYYYMM=strftime(x_time,"%Y-%m") &lt;BR /&gt;
| where RESOLUTION_DATE_YYYYMM&amp;gt;="2017-06" AND RESOLUTION_DATE_YYYYMM&amp;lt;="2017-11" &lt;BR /&gt;
| eval CREATED_DATE_time=strptime(CREATED_DATE,"%d-%b-%Y %H:%M:%S"), RESOLUTION_DATE_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S") &lt;BR /&gt;
| eval RESOLVE_DURATION = (RESOLUTION_DATE_time-CREATED_DATE_time)/3600 &lt;BR /&gt;
| eventstats max(RESOLUTION_DATE_time) as max_RESOLUTION_DATE_time by DEFECT_ID RESOLUTION_DATE_YYYYMM &lt;BR /&gt;
| where RESOLUTION_DATE_time=max_RESOLUTION_DATE_time &lt;BR /&gt;
| eventstats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_YTD &lt;BR /&gt;
| stats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_MTD by RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_YTD &lt;BR /&gt;
| sort RESOLUTION_DATE_YYYYMM &lt;BR /&gt;
| tail 3 &lt;BR /&gt;
| eval TEAM="IST", REPORT="MTTRetest" &lt;BR /&gt;
| eval TEAMREPORT=TEAM."~".REPORT."~".avg_RESOLVE_DURATION_YTD &lt;BR /&gt;
| xyseries TEAMREPORT RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_MTD &lt;BR /&gt;
| appendcols &lt;BR /&gt;
    [| makeresults &lt;BR /&gt;
    | eval TEAM="IST", REPORT="MTTRetest" &lt;BR /&gt;
    | eval TEAMREPORT=TEAM." ".REPORT &lt;BR /&gt;
    | lookup ATT_CPVT__REPORTS TEAM AS TEAM REPORT AS REPORT OUTPUT BENCHMARK AS BENCHMARK TARGET AS TARGET DESCRIPTION AS DESCRIPTION &lt;BR /&gt;
    | eval BENCHMARK=split(BENCHMARK,"~"), TARGET=split(TARGET,"~")]&lt;BR /&gt;
| rex field=TEAMREPORT "(?[^~]&lt;/EM&gt;)~(?[^~]&lt;EM&gt;)~(?.&lt;/EM&gt;)"&lt;BR /&gt;
| fields - TEAMREPORT&lt;BR /&gt;
| rename avg_RESOLVE_DURATION_YTD AS "AVERAGE RESOLVE DURATION YTD"&lt;BR /&gt;
| fields TEAM REPORT DESCRIPTION BENCHMARK TARGET * "AVERAGE RESOLVE DURATION YTD"&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2020 16:59:04 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307616#M164698</guid>
      <dc:creator>timcolpoATT</dc:creator>
      <dc:date>2020-09-29T16:59:04Z</dc:date>
    </item>
    <item>
      <title>Re: Untable data form a search used to compute an average duration from events with 2 dates</title>
      <link>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307617#M164699</link>
      <description>&lt;P&gt;Thanks for the answers I will give them a try and will also do a comparison on efficiency. The following is one way I got it to work but I am not 100% sure on the merit of the approach &lt;/P&gt;

&lt;P&gt;index="db_index" sourcetype="JDBC_defects" (CREATED_DATE=* AND RESOLUTION_DATE=&lt;EM&gt;) (SEVERITY="Severity 1" OR SEVERITY="Severity 2") (DEF_PHASE_FOUND="Integrated Systems Test (IST)") &lt;BR /&gt;
| eval x_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S") &lt;BR /&gt;
| eval RESOLUTION_DATE_YYYYMM=strftime(x_time,"%Y-%m") &lt;BR /&gt;
| where RESOLUTION_DATE_YYYYMM&amp;gt;="2017-06" AND RESOLUTION_DATE_YYYYMM&amp;lt;="2017-11" &lt;BR /&gt;
| eval CREATED_DATE_time=strptime(CREATED_DATE,"%d-%b-%Y %H:%M:%S"), RESOLUTION_DATE_time=strptime(RESOLUTION_DATE,"%d-%b-%Y %H:%M:%S") &lt;BR /&gt;
| eval RESOLVE_DURATION = (RESOLUTION_DATE_time-CREATED_DATE_time)/3600 &lt;BR /&gt;
| eventstats max(RESOLUTION_DATE_time) as max_RESOLUTION_DATE_time by DEFECT_ID RESOLUTION_DATE_YYYYMM &lt;BR /&gt;
| where RESOLUTION_DATE_time=max_RESOLUTION_DATE_time &lt;BR /&gt;
| eventstats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_YTD &lt;BR /&gt;
| stats avg(RESOLVE_DURATION) as avg_RESOLVE_DURATION_MTD by RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_YTD &lt;BR /&gt;
| sort RESOLUTION_DATE_YYYYMM &lt;BR /&gt;
| tail 3 &lt;BR /&gt;
| eval TEAM="IST", REPORT="MTTRetest" &lt;BR /&gt;
| eval TEAMREPORT=TEAM."~".REPORT."~".avg_RESOLVE_DURATION_YTD &lt;BR /&gt;
| xyseries TEAMREPORT RESOLUTION_DATE_YYYYMM avg_RESOLVE_DURATION_MTD &lt;BR /&gt;
| appendcols &lt;BR /&gt;
    [| makeresults &lt;BR /&gt;
    | eval TEAM="IST", REPORT="MTTRetest" &lt;BR /&gt;
    | eval TEAMREPORT=TEAM." ".REPORT &lt;BR /&gt;
    | lookup ATT_CPVT__REPORTS TEAM AS TEAM REPORT AS REPORT OUTPUT BENCHMARK AS BENCHMARK TARGET AS TARGET DESCRIPTION AS DESCRIPTION &lt;BR /&gt;
    | eval BENCHMARK=split(BENCHMARK,"~"), TARGET=split(TARGET,"~")]&lt;BR /&gt;
| rex field=TEAMREPORT "(?[^~]&lt;/EM&gt;)~(?[^~]&lt;EM&gt;)~(?.&lt;/EM&gt;)"&lt;BR /&gt;
| fields - TEAMREPORT&lt;BR /&gt;
| rename avg_RESOLVE_DURATION_YTD AS "AVERAGE RESOLVE DURATION YTD"&lt;BR /&gt;
| fields TEAM REPORT DESCRIPTION BENCHMARK TARGET * "AVERAGE RESOLVE DURATION YTD"&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2020 16:59:07 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/Untable-data-form-a-search-used-to-compute-an-average-duration/m-p/307617#M164699</guid>
      <dc:creator>timcolpo</dc:creator>
      <dc:date>2020-09-29T16:59:07Z</dc:date>
    </item>
  </channel>
</rss>

