Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
8
Help us understand the problem. What is going on with this article?
@shnagai

Kibana上のアクセスログをIPレンジで見る為、ElasticsearchにIP Typeフィールドを追加してみるといい感じ

More than 5 years have passed since last update.

アクセスログをKibanaで見る時に、特定レンジのIPでフィルタかけれたら色々便利なのではという同僚からの意見を受け、試してみたのでシェア!

Elasticsearchのフィールドのスキーマ変更(template)

まずは、Elasticsearch側のテンプレートで、クライアントIPを定義しているフィールドに対しIP Typeを追加

下記例でいくと、c-ip.iptypeでIP Typeのレンジクエリ等を発行出来る。

        "c-ip" : { "type":"multi_field",
          "fields":{
            "c-ip":{ "type":"string","index":"not_analyzed"},
            "iptype":{ "type":"ip"}
          }
        }

templateを更新(反映は、次回インデックス作成時 ※アクセスログなので日単位で)

手順は、下記を読み替える

$ curl -XPUT localhost:9200/_template/[テンプレート名] -d "`cat [json設置場所]`"
#反映を確認
$ curl -XGET "localhost:9200/_template/[テンプレート名]?pretty" 

インデックスを日単位で更新してなかったり、即時反映したい場合は下記参照に直接mapping更新のAPIを突けば出来ます。

http://kobitosan.hatenablog.com/entry/2014/12/23/103746

実際にレンジクエリでKibana上で可視化してみる

IP Typeのレンジクエリは、Kibanaだと下記形式で使えた(dateと同じ)

c-ip.iptype:[開始IP TO 終了IP]

適当な試験環境で、レンジクエリと実際のクライアントIP毎のアクセス量のtermの集計値が合っているかを確認した↓

Kibana_3_-_New_Dashboard.png

特定ISPから不正アクセス来た時にどのページ見てるとか、ある程度IPで絞れるところから何かされてるのを検知したい時に、クライアントIPにレンジクエリ使えれば便利そう!

8
Help us understand the problem. What is going on with this article?
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
connehito
コネヒト株式会社は、「あなたの家族像を実現する社会をつくる」をビジョンに掲げる、現代社会における多様な家族像の実現を目指す会社。女性向けの「ママリ」「ママRework」や家族の購買の意思決定を支える「ママリ口コミ大賞」、男性育休冊子などを展開。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
8
Help us understand the problem. What is going on with this article?