Splunk Search

How do you transform table values like this?

splunkelz
Engager

Is there a way or command to make the table results something like on the expected output.

current data:

hostname ip database_status internet_status proxy_status
server101 192.168.10.2 online online offline
server102 192.168.10.3 offline online offline


expected output:

hostname ip status
server101 192.168.10.2 database_status = "online"
internet_status = "online"
proxy_status = "offline"
server102 192.168.10.3 database_status = "offline"
internet_status = "online"
proxy_status = "offline"
Labels (1)
0 Karma
1 Solution

kamlesh_vaghela
SplunkTrust
SplunkTrust

@splunkelz 

Can you please try this?

YOUR_SEARCH
| eval status=""
| foreach *_status 
    [| eval status= mvappend(status,"<<FIELD>>"+"="+<<FIELD>>)] 
| table hostname ip status

 

My Sample Search :

| makeresults 
| eval _raw="hostname	ip	database_status	internet_status	proxy_status
server101	192.168.10.2	online	online	offline
server102	192.168.10.3	offline	online	offline" 
| multikv forceheader=1 
| table hostname ip database_status internet_status proxy_status 
| eval status=""
| foreach *_status 
    [| eval status= mvappend(status,"<<FIELD>>"+"="+<<FIELD>>)] 
| table hostname ip status

 

Screenshot 2022-04-26 at 1.14.57 PM.png

 

Thanks
KV


If any of my reply helps you to solve the problem Or gain knowledge, an upvote would be appreciated.

 

View solution in original post

0 Karma

splunkelz
Engager
0 Karma

gcusello
SplunkTrust
SplunkTrust

Hi @splunkelz,

please try something like this:

index=your_index
| eval 
     database_status="database_status=".database_status,
     internet_status="internet_status".internet_status,
     proxy_status="proxy_status".proxy_status
| stats values(ip) AS ip values(database_status) AS database_status values(internet_status) AS internet_status values(proxy_status) AS proxy_status BY hostname

Ciao.

Giuseppe

0 Karma

kamlesh_vaghela
SplunkTrust
SplunkTrust

@splunkelz 

Can you please try this?

YOUR_SEARCH
| eval status=""
| foreach *_status 
    [| eval status= mvappend(status,"<<FIELD>>"+"="+<<FIELD>>)] 
| table hostname ip status

 

My Sample Search :

| makeresults 
| eval _raw="hostname	ip	database_status	internet_status	proxy_status
server101	192.168.10.2	online	online	offline
server102	192.168.10.3	offline	online	offline" 
| multikv forceheader=1 
| table hostname ip database_status internet_status proxy_status 
| eval status=""
| foreach *_status 
    [| eval status= mvappend(status,"<<FIELD>>"+"="+<<FIELD>>)] 
| table hostname ip status

 

Screenshot 2022-04-26 at 1.14.57 PM.png

 

Thanks
KV


If any of my reply helps you to solve the problem Or gain knowledge, an upvote would be appreciated.

 

0 Karma
Get Updates on the Splunk Community!

Splunk Mobile: Your Brand-New Home Screen

Meet Your New Mobile Hub  Hello Splunk Community!  Staying connected to your data—no matter where you are—is ...

Introducing Value Insights (Beta): Understand the Business Impact your organization ...

Real progress on your strategic priorities starts with knowing the business outcomes your teams are delivering ...

Enterprise Security (ES) Essentials 8.3 is Now GA — Smarter Detections, Faster ...

As of today, Enterprise Security (ES) Essentials 8.3 is now generally available, helping SOC teams simplify ...