Splunk Search

rex during search convert to transforms/props during indexing help

jtm7x2
Explorer

Hello.  I have a data source that is "mostly" json formatted, except it uses single quotes instead of double, therefore, splunk is not honoring it if I set the sourcetype to json.

If I run a query against it using this:

sourcetype="test" | rex field=_raw mode=sed "s/'/\"/g"
| spath

it works fine, and all fields are extracted.

How can I configure props and transforms to perform this change at index time so that my users don't need to have the additional search parameters and all the fields are extracted by default, short of manually extracting each field?

Example event, no nested fields:

{'date': '2024-02-10', 'time': '18:59:27', 'field1': 'foo', 'field2': 'bar'}

Labels (1)
0 Karma
1 Solution

jtm7x2
Explorer

Thanks.  I got it to work, but had to modify the syntax slightly to remove the backslashes - this worked.

[yoursourcetype]
SEDCMD-singletodouble=s/'/"/g

 

View solution in original post

0 Karma

marnall
Motivator

You can use a SEDCMD to replace all the single quotes with double-quotes before indexing.

in Props.conf:

[yoursourcetype]
SEDCMD-singletodouble=s/\'/\"/g

jtm7x2
Explorer

Thanks.  I got it to work, but had to modify the syntax slightly to remove the backslashes - this worked.

[yoursourcetype]
SEDCMD-singletodouble=s/'/"/g

 

0 Karma
Get Updates on the Splunk Community!

Monitoring Postgres with OpenTelemetry

Behind every business-critical application, you’ll find databases. These behind-the-scenes stores power ...

Mastering Synthetic Browser Testing: Pro Tips to Keep Your Web App Running Smoothly

To start, if you're new to synthetic monitoring, I recommend exploring this synthetic monitoring overview. In ...

Splunk Edge Processor | Popular Use Cases to Get Started with Edge Processor

Splunk Edge Processor offers more efficient, flexible data transformation – helping you reduce noise, control ...