Splunk Search

replace string in field value using eval or sed

Sri401
New Member

I have one field(query) value like

select * from host where id = 'something' and name = 'xxxxxx'

Now I want to replace id and name with '?'

I have tried with rex and sed something like
rex field=query mode=sed "s/name*./?/g" and also using eval filed=replace....

but i didn't find the solution

can any one please help me with this

0 Karma

richgalloway
SplunkTrust
SplunkTrust

The regex is incorrect. It's looking for "nam" followed by any number of "e"s followed by any character. Try this:

| rex field=query mode=sed "s/name/?/g" | rex field=query mode=sed "s/id/?/g"
---
If this reply helps you, Karma would be appreciated.
0 Karma

Sri401
New Member

thanks for your response,

I want to replace name and id value with ?. after replace string the output looks like

select * from host where id = '?' and name = '?'

name and id values are dynamic

0 Karma

richgalloway
SplunkTrust
SplunkTrust

That's different, but similar.

| rex field=query mode=sed "s/(name\s*=\s*')[^']+/\1/g" | rex field=query mode=sed "s/(id\s*=\s*')[^']+/\1/g"
---
If this reply helps you, Karma would be appreciated.
0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Data Outage Monitoring and Reporting

We’ve all been there, right? Living our best life, working on our Splunk environment, when out of nowhere a ...

Manage Datasets and Connections in Catalog on Splunk Cloud Platform

Set Up Data Where You Use It Catalog already helps teams find and understand data across Splunk indexes, ...

Persistent Queue at TcpOut — One of Splunk's Most Practical Features

Splunk introduced persistent queueing at the tcpout layer as one of the most practical resilience features in ...