Help us understand the problem. What is going on with this article?

Splunkで集計結果をグラフにしたときに、グラフのある地点にコメント(annotation)をつける

概要

  • この記事ではSplunk 7.xを使っています
    • annotationはSplunk 7系からの新機能だと思います
  • 業務でも、Splunkをログに取り込んで分析することがあると思います
  • Splunkでグラフなどで可視化する際に、例えばソフトウェアリリースのタイミングなどの情報をグラフにつける方法です

参考にしたサイト

  • 以下のサイトの情報を参考に、Splunkのルックアップを使ってファイルからannotationをつける方法を整理しました。annotation全般については参考文献1と参考文献2が分かりやすいですが、実際にやったことは参考文献3をなぞっただけです。

やり方

  • 参考文献3をマネして、annotationをつけたい時点のunixtimeとメッセージを書いたファイルを準備して、それを使っています。今回はソフトウェアリリースしたときのタグをSplunkにannotationしたいという状況を想定し、以下のようなファイルを準備しました。
$ cat note.csv
timestamp,tag
1564469657,v56
  • ルックアップについての公式ドキュメント を参考に "Upload the lookup table to Splunk Enterprise" -> "Define the lookup"まで済ませておく

    • 日本語だと設定 > ルックアップ > ルックアップテーブルファイル, 設定 > ルックアップ > ルックアップ定義
    • スクリーンショット 2019-09-09 19.49.32.png
    • スクリーンショット 2019-09-09 19.50.46.png
  • クエリそのものではなく、ダッシュボードを構成するxmlを編集する必要があるので、コメント(annotation)をつけたいクエリをダッシュボードに保存しておきます(「名前をつけて保存」 > ダッシュボードパネル)

  • 適当なモックデータを作るためのクエリ(ほぼ参考文献1そのまま)

    • annotationしたい地点を含むようにgentimesの範囲を指定しています
| gentimes start=7/26/2019, end=8/1/2019
| eval _time=starttime
| fields _time
| eval data=random()
| eval data=substr(data,1,2)
  • このクエリをダッシュボードとして保存します。保存してから ダッシュボード > 編集 > ソースの編集 (XML)を選んでxmlを以下のように編集します。
    • searchタグの部分を修正
<dashboard>
  <label>sample_annotation</label>
  <row>
    <panel>
      <chart>
        <search>
          <query>| gentimes start=7/26/2019, end=8/1/2019
 | eval _time=starttime
 | fields _time
 | eval data=random()
 | eval data=substr(data,1,2)</query>
          <earliest>-15m</earliest>
          <latest>now</latest>
          <sampleRatio>1</sampleRatio>
        </search>
        <search type="annotation">
          <query> | inputlookup note.csv
| eval _time = timestamp
| eval annotation_label = tag</query>
        </search>
        (option指定した行がずっと続くので中略)
      </chart>
    </panel>
  </row>
</dashboard>
  • すると、見事、annotationがグラフにつきます! やったね! スクリーンショット 2019-09-09 20.00.14.png
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away