はじめに
- SplunkにはREST APIコマンドリファレンスが用意されている
- 検索を実行。
- オブジェクトと構成を管理。
- GUIで出来ることはなるべくAPIでプログラマティックに実装したい人向け
- RESTを調べたきっかけは、「あるトリガーをきっかけに”特定のログファイルの監視を有効化”させる方法」を探していてたどり着きました
REST APIで何ができるか
- サーチして結果をcsvで出力する
2.inputs設定を変更する(詳細は以下で)
手順
-
やりたいこと
- あらかじめ用意したsecureログ監視の設定(無効)を、REST APIで有効(呼び起こす)
- 監視スクリプトなどでトリガー検知後のスクリプト実行に本REST APIをあわせる利用を想定
-
REST APIを実行
monitor有効化
curl -k -u admin:(password) https://13.xx.xx.xx:8089/servicesNS/nobody/Splunk_TA_nix/data/inputs/monitor/%2Fvar%2Flog%2Fsecure -d disabled=false
-
point
- -k :SSL証明書のチェック無視
- -u :User/Pass認証
- /Splunk_TA_nix :設定内容の保存先appを指定
- %2Fvar%2Flog%2Fsecure →:監視対象ファイルpath(/)は「%2F」または「%252F」のURI-Encodingで指定(https://docs.splunk.com/Documentation/Splunk/8.0.0/RESTUM/RESTusing)
- -d disabled=false →: 有効化の設定
-
他にもindexの保存先のパラメータ変更なども可能
indexの変更(secure→windows)
curl -k -u admin:(password) https://13.xx.xx.xx:8089/servicesNS/nobody/Splunk_TA_nix/data/inputs/monitor/%252Fvar%252Flog%252Fsecure -d index=windows
-
結構いろいろできそう
-
今回はinputsで利用可能なAPIをcheckしました
参考
- 参考になったAnswer
- 本家ガイド