Splunk Search

how to optymize my query

kp_pl
Path Finder

Below quite simple query to fill drop down list in my dashboard. 

 

index=gwcc
| eval file=lower(mvindex(split(source,"/"),-1))
| dedup file
| table source, file
| sort file


The point is it takes 30-60 seconds to generate it.   Do you have an idea how to simplify it ? Or write in more efficient way ?

 

Labels (1)
0 Karma

kp_pl
Path Finder

metadata and with pipe at the front of .... completely new command/structure for me, but  it works, and works much faster 🙂

But one more unexpected case has appeared due to this change. I cannot filter out rotated files which are in the directory and are not necessary . It looks something like

file1.log
file1.2024-09-01.log
file1.2024-08-02.log

etc. etc.

and of course I only need the main , the most present file ( without any dates)
so I tried

| metadata type=sources where index=gwcc AND source !='*log.2024-*'
| eval source2=lower(mvindex(split(source,".2024"),-1))
| eval file=lower(mvindex(split(source,"/"),-1))
| table source, source2, file

but my "filter" does not work .

0 Karma

PickleRick
SplunkTrust
SplunkTrust

There is another way to achieve similar results. Instead of the metadata command (which is great in its own right), you can use the tstats command which might work a bit slower than metadata but can do more complicated stuff with indexed fields.

| tstats values(source) AS source WHERE index=* source !='*log.2024-*'
| mvexpand source
| <the rest of your evals>

 

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

The metadata command doesn't take filters other than index so filter after the data is returned

 

| metadata type=sources where index=gwcc
| search source !="*log.2024-*"
| eval source2=lower(mvindex(split(source,".2024"),-1))
| eval file=lower(mvindex(split(source,"/"),-1))
| table source, source2, file

 

kp_pl
Path Finder

great!   Works as expected 🙂

one correction:  it should be double quotes instead of single in search  🙂

 

| search source !="*log.2024-*"

 

 

 

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

Corrected

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

Try something like this

| metadata type=sources where index=gwcc
| eval file=lower(mvindex(split(source,"/"),-1))
| dedup file
| table source, file
| sort file
Get Updates on the Splunk Community!

Data Management Digest – December 2025

Welcome to the December edition of Data Management Digest! As we continue our journey of data innovation, the ...

Index This | What is broken 80% of the time by February?

December 2025 Edition   Hayyy Splunk Education Enthusiasts and the Eternally Curious!    We’re back with this ...

Unlock Faster Time-to-Value on Edge and Ingest Processor with New SPL2 Pipeline ...

Hello Splunk Community,   We're thrilled to share an exciting update that will help you manage your data more ...