Splunk Search

Some time questions.

JDukeSplunk
Builder

I'm working on a financial data dashboard, and i have a few panels that pull data from last year relative to this year (now).

Question 1.
So.. I'm trying to get a sum from the current week number last year. They want to see sales data for the week last year, and compare that to sales data for the current week. I see where I can get "week number" as a field

|my base search
| eval weeknumber=strftime(_time,"%U")

What id like to be able to do is

basesearch earliest=-1y,weeknumber17@w0 latest=-1y+current_#_of_days_in_this_years_week17

Question 2.
Is there a Splunk earliest=currentfiscalyear latest=now or do I have to construct something that will always identify February,1st regardless of the year. Or.. am I stuck entering earliest="2/1/2020:00:00:00" and just setting a reminder to edit the search once a year? Should I just define them in times.conf and then call them from the search? If so.. what might that look like?

0 Karma

to4kawa
Ultra Champion

Q1:

| makeresults 
| eval time = strftime(_time , "%Y %j")
| eval time2 = relative_time(strptime(time,"%Y %j"),"@w0")
| convert ctime(time2) as time2_h

How's %j and relavie_time?

Q2:

https://answers.splunk.com/answers/783096/how-to-identify-fiscal-year-in-dashboard-reporting.html
I think you should make current Fiscal year

JDukeSplunk
Builder

I didn't use all of the parameters I created, but I did setup a "silent" search on the dashboard to generate them.

  <search id="silentsearchgettimes">
    <query>| makeresults count=1| eval weeknumber=strftime(_time,"%U"), mdaynumber=strftime(_time,"%d") , absdaynumber=strftime(_time,"%j"), wdaynumber=strftime(_time,"%w"), monthnumber=strftime(_time,"%m"), dayhour=strftime(_time,"%w%H"),hour=strftime(_time,"%H"),combined=strftime(_time,"%U%w%H")</query>
    <earliest>-10m</earliest>
    <latest>now</latest>
    <finalized>
      <condition match=" 'job.resultCount' != 0">
        <set token="monthnumber">$result.monthnumber$</set>
        <set token="weeknumber">$result.weeknumber$</set>
        <set token="absdaynumber">$result.absdaynumber$</set>
        <set token="wdaynumber">$result.wdaynumber$</set>
        <set token="mdaynumber">$result.mdaynumber$</set>
        <set token="dayhour">$result.dayhour$</set>
        <set token="hour">$result.hour$</set>
        <set token="combined">$result.combined$</set>
      </condition>
    </finalized>
  </search>

And then in individual searches called them. The one below uses "combined" which combines current week#,weekday# and hour.. So the output right now for combined would be 17413..This keeps last years week to date panel in line with a current search of live data using earliest=@w0 latest=now. At least within an hour.

index="someindex " sourcetype="order_csv" source="order_history_updDateFormat.csv" host="somehost" earliest=-1y@w0 latest=-1y+7d | fields revenue
|eval combined=strftime(_time,"%U%w%H")
|where combined<=$combined$
|stats sum(revenue) AS Revenue

Career Survey
First 500 qualified respondents will receive a $20 gift card! Tell us about your professional Splunk journey.

Can’t make it to .conf25? Join us online!

Get Updates on the Splunk Community!

Community Content Calendar, September edition

Welcome to another insightful post from our Community Content Calendar! We're thrilled to continue bringing ...

Splunkbase Unveils New App Listing Management Public Preview

Splunkbase Unveils New App Listing Management Public PreviewWe're thrilled to announce the public preview of ...

Leveraging Automated Threat Analysis Across the Splunk Ecosystem

Are you leveraging automation to its fullest potential in your threat detection strategy?Our upcoming Security ...