1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Splunk Advent Calendar 2020Advent Calendar 2020

Day 18

Splunk 新しいEval(JSON関連)

Last updated at Posted at 2020-12-17

Splunk DocsのEval Functionsをみていると、見慣れないものを見つけたので紹介します。:sweat:言い方

#JSON Functions
https://docs.splunk.com/Documentation/Splunk/8.1.1/SearchReference/JSONFunctions
JSONがspath以外でいろいろと扱えるようになっている。

##json_set

json_set_sample.spl
index=_internal | head 1 | fields _raw
| eval _raw="{\"event_type\":\"Threat_Event\",\"ipv4\":\"127.0.0.1\",\"hostname\":\"pc_name.local\",\"occured\":\"01-Dec-2017 22:24:34\",\"severity\":\"Warning\",\"threat_type\":\"potentially unsafe application\"}"
| eval _raw=json_set(_raw,"ipv4","192.168.0.1")

{ [-]
event_type: Threat_Event
hostname: pc_name.local
ipv4: 192.168.0.1
occured: 01-Dec-2017 22:24:34
severity: Warning
threat_type: potentially unsafe application
}
と最初のipv4: 127.0.0.1ipv4: 192.168.0.1に変更している。

##json_extract

json_extract_sample.spl
index=_internal | head 1 | fields _raw
| eval _raw="{\"cities\":[{\"name\":\"London\",\"Bridges\":[{\"name\":\"Tower Bridge\",\"length\":801},{\"name\":\"Millennium Bridge\",\"length\":1066}]},{\"name\":\"Venice\",\"Bridges\":[{\"name\":\"Rialto Bridge\",\"length\":157},{\"name\":\"Bridge of Sighs\",\"length\":36},{\"name\":\"Ponte della Paglia\"}]},{\"name\":\"San Francisco\",\"Bridges\":[{\"name\":\"Golden Gate Bridge\",\"length\":8981},{\"name\":\"Bay Bridge\",\"length\":23556}]}]}"
| eval "San_Francisco1"=json_extract(_raw,"cities{2}")
| eval "San_Francisco2"=spath(_raw,"cities{2}")

spathと同じ感じで使える。

##json_array

json_array_sample.spl
| makeresults
| eval ponies = json_array("buttercup", "fluttershy", "rarity")
| eval 

アレイはこれで。

##json_object

json_object_sample.spl
index=_internal | head 1 | fields _raw
| eval _raw = json_object("ponies" ,json_array("buttercup", "fluttershy", "rarity"))

{ [-] ponies: [ [-] buttercup fluttershy rarity ] }

あとはlookupがあるけど、うまくいかない・・・:cry:

#まとめ
makeresultsと同様にJSONもこれでいろいろと作れるようになりました。

リリースノートに載っていなかったので見逃していました。:sweat:

Happy Splunking!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?