Reporting

Restful URL access log reports

tborf
Engager

Hi I'm new to splunk. I have an web access log that I want to pull usage information from. Now the URLs are restful web service urls, so the url path is different for each service bing called. Also the name of the user calling the service is included in the path. like this: http://mysite.com/myservice/username.

So my question is how can I get splunk to report on the number of services being accessed, wich users are accessing what services and how often. Basically I guess I am asking how can I report on the data parsed from the URL.

Thanks

pcholakov
Engager

I did it using rex in sed mode. Suppose you have an index with some paths having URIs such as /service/devices/5302AFDCE0EA/operation, e.g. of access logs containing:

 127.0.0.1 - - [26/Sep/2014:18:01:07 +0200] "GET /service/devices/5302AFDCE0EA/operation HTTP/1.1" 200 112719 7085350

You can use rex to collapse all the URIs containing a unique device ID into a URI value /service/devices/${deviceId}/operation like this:

 index="web-logs" earliest=-30m latest=now | rex field=uri mode=sed "s/\/devices\/\\w+\//\/devices\/${deviceId}\//g"

Now you can group events by uri and you won't have a long tail of unique values clumped under "OTHER". You can chain multiple | rex ... commands to your SPL to process more URI patterns.

0 Karma
Get Updates on the Splunk Community!

[Puzzles] Solve, Learn, Repeat: Dynamic formatting from XML events

This challenge was first posted on Slack #puzzles channelFor a previous puzzle, I needed a set of fixed-length ...

Enter the Agentic Era with Splunk AI Assistant for SPL 1.4

  🚀 Your data just got a serious AI upgrade — are you ready? Say hello to the Agentic Era with the ...

Stronger Security with Federated Search for S3, GCP SQL & Australian Threat ...

Splunk Lantern is a Splunk customer success center that provides advice from Splunk experts on valuable data ...