Splunk Search

Complex query on IIS log

mamoSplunk
Explorer

Hi all,

I would like extract from intranet weblog (IIS log) top pages grouped by departments to see which pages are most viewed by each department.
I can use the cs_username field to identify the department and with the following query I can count the total activity by depertment:

 

sourcetype="iis" index=intranet | fields cs_username |
   rex field=cs_username "(?i)mydomain\\\(?<username>[^\s]*)" |
   stats count as events by username |
   table username events |
   lookup address.csv Email as username | fillnull value=- |
   stats sum(events) as total_events by department

 

 

Now I would like to extract the most viewed pages (cs_uri_stem) grouped by department. How can I do that?

Thank you in advance!

Labels (1)
0 Karma
1 Solution

ITWhisperer
SplunkTrust
SplunkTrust
sourcetype="iis" index=intranet 
| fields cs_username cs_uri_stem 
| rex field=cs_username "(?i)mydomain\\\(?<username>[^\s]*)" 
| stats count as events by username cs_uri_stem 
| table username cs_uri_stem events 
| lookup address.csv Email as username 
| fillnull value=- 
| stats sum(events) as total_events by cs_uri_stem department
| sort 0 department -total_events
| streamstats count as row by department
| where row <= 10

View solution in original post

mamoSplunk
Explorer

Thank you very much ITWhisperer. It works!
May I ask you if is it possible to limit the number of total_events by department to, let's say, the first ten? I would like to display the top 10 cs_uri_stem by for each department.

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust
sourcetype="iis" index=intranet 
| fields cs_username cs_uri_stem 
| rex field=cs_username "(?i)mydomain\\\(?<username>[^\s]*)" 
| stats count as events by username cs_uri_stem 
| table username cs_uri_stem events 
| lookup address.csv Email as username 
| fillnull value=- 
| stats sum(events) as total_events by cs_uri_stem department
| sort 0 department -total_events
| streamstats count as row by department
| where row <= 10

mamoSplunk
Explorer

@ITWhispererI am really impressed! Thank you very much.

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust
sourcetype="iis" index=intranet 
| fields cs_username cs_uri_stem 
| rex field=cs_username "(?i)mydomain\\\(?<username>[^\s]*)" 
| stats count as events by username cs_uri_stem 
| table username cs_uri_stem events 
| lookup address.csv Email as username 
| fillnull value=- 
| stats sum(events) as total_events by cs_uri_stem department
Get Updates on the Splunk Community!

AI for AppInspect

We’re excited to announce two new updates to AppInspect designed to save you time and make the app approval ...

App Platform's 2025 Year in Review: A Year of Innovation, Growth, and Community

As we step into 2026, it’s the perfect moment to reflect on what an extraordinary year 2025 was for the Splunk ...

Operationalizing Entity Risk Score with Enterprise Security 8.3+

Overview Enterprise Security 8.3 introduces a powerful new feature called “Entity Risk Scoring” (ERS) for ...