Getting Data In

dynamically assign sourcetype on folder

fredkaiser
Path Finder

I'll like to assign the sourcetype on the folder the logs are sitting in

What I have

File location pick up by forwarder

C:\Program Files (x86)\License\Current\test\filename.log

props.conf

[source::C:\\Program Files (x86)\\License\\Current\\*\\*.log] 
TRANSFORMS-set_sourcetype = set_sourcetype_from_log_subdir

Transforms.conf

[set_sourcetype_from_log_subdir]
SOURCE_KEY = MetaData:Source
DEST_KEY = MetaData:Sourcetype
REGEX = .+\\(.+)\\[^]*
FORMAT = sourcetype::$1

Splunk Returns sourcetype as filename when index

but I want is the folder not the file name so it should return test

0 Karma
1 Solution

fredkaiser
Path Finder

found the issue was to do with are Props.conf

Props.conf

[source::C:\Program Files (x86)\\Current\\*\\*.log] 

should be

[source::...\\Current\\*\\*.log]

everything else was right.

View solution in original post

0 Karma

fredkaiser
Path Finder

found the issue was to do with are Props.conf

Props.conf

[source::C:\Program Files (x86)\\Current\\*\\*.log] 

should be

[source::...\\Current\\*\\*.log]

everything else was right.

0 Karma

MuS
Legend

Hi fredkeiser,

Your regex is missing the double escaped backslashes and you can test it with Splunk's internal regex functions:

splunk cmd pcregextest test_str="C:\Program Files (x86)\LIC\Current\test\filename.log" mregex=".+\\(.+)\\[^\\]*"
returns:

Original Pattern: '.+\(.+)\[^\]*'
Expanded Pattern: '.+\(.+)\[^\]*'
ERROR: Regex: unmatched parentheses

But if you double escape the backslashes it works:

splunk cmd pcregextest test_str="C:\Program Files (x86)\LIC\Current\test\filename.log" mregex=".+\\\(.+)\\\[^\\\]+"
returns:

Original Pattern: '.+\\(.+)\\[^\\]+'
Expanded Pattern: '.+\\(.+)\\[^\\]+'
Regex compiled successfully. Capture group count = 1. Named capturing groups = 0.
SUCCESS - match against: 'C:\Program Files (x86)\LIC\Current\test\filename.log'

#### Capturing group data ##### 
Group |            Name | Value
--------------------------------------
    1 |                 | test

Hope this helps ...

cheers, MuS

0 Karma

fredkaiser
Path Finder

I'll try that as well and still returns the file name as the sourcetype. even when you test your regex here http://www.regexr.com/ it shows it should work. But for some reason it doesn't work with Splunk

0 Karma

MuS
Legend

Ahh, sorry my bad ! I'll update the answer ....

0 Karma

MuS
Legend

update done

0 Karma

fredkaiser
Path Finder

Thanks for the help MuS

0 Karma
Get Updates on the Splunk Community!

.conf24 | Registration Open!

Hello, hello! I come bearing good news: Registration for .conf24 is now open!   conf is Splunk’s rad annual ...

ICYMI - Check out the latest releases of Splunk Edge Processor

Splunk is pleased to announce the latest enhancements to Splunk Edge Processor.  HEC Receiver authorization ...

Introducing the 2024 SplunkTrust!

Hello, Splunk Community! We are beyond thrilled to announce our newest group of SplunkTrust members!  The ...