Splunk Search

How to calculate field to replace value of field?

jason_hotchkiss
Communicator

Hello - 

I have a table with the following:

host

HOST FQDN DNS_NAME HOST_MATCH INDEX
hostalpha hosta.mydomain.com hosta false index_a
hosta host - true index_b


Created from the following search:

base_search
| rex field=FQDN ""^(?<DNS_NAME>[^.]+)\..*$"
| fillnull value="-" DNS_NAME
|eval HOST_MATCH="if(host='DNS_NAME',"true","false")

How would I replace the do the following:

1.  If HOST != DNS_NAME, Make HOST = DNS_NAME
2.  If DNS_NAME = "-" MAKE DNS_NAME = HOST

Thanks!

Labels (2)
0 Karma
1 Solution

ITWhisperer
SplunkTrust
SplunkTrust

Just do the evaluations in the opposite order

| eval DNS_NAME=if(DNS_NAME == "-", HOST, DNS_NAME)
| eval HOST=if(HOST != DNS_NAME, DNS_NAME, HOST)

View solution in original post

ITWhisperer
SplunkTrust
SplunkTrust

Just do the evaluations in the opposite order

| eval DNS_NAME=if(DNS_NAME == "-", HOST, DNS_NAME)
| eval HOST=if(HOST != DNS_NAME, DNS_NAME, HOST)

jason_hotchkiss
Communicator

@ITWhisperer thank you.  I was way overthinking this.  Much appreicated!

0 Karma
Get Updates on the Splunk Community!

Aligning Observability Costs with Business Value: Practical Strategies

 Join us for an engaging Tech Talk on Aligning Observability Costs with Business Value: Practical ...

Mastering Data Pipelines: Unlocking Value with Splunk

 In today's AI-driven world, organizations must balance the challenges of managing the explosion of data with ...

Splunk Up Your Game: Why It's Time to Embrace Python 3.9+ and OpenSSL 3.0

Did you know that for Splunk Enterprise 9.4, Python 3.9 is the default interpreter? This shift is not just a ...