CookBook

request.log を Kibana で可視化する方法

投稿日:2017-08-16 更新日:

この CookBook では、request.log を Kibana で可視化する方法について紹介しています。
方法は色々ありますが、この CookBook では Logstashlogstash-logback-encoder を組み合わせて Elasticsearch へのログの投入を行います。

レシピ

  1. De_dot filter plugin | Logstash のインストール
  2. logstash.conf を作成
  3. WEB-INF/conf/log/im_logger_request_logstash.xml を配置
  4. logstash-logback-encoder-x.xx.jar を配置

1. De_dot filter plugin | Logstash のインストール

MDC のキー名に含まれるドット(.)をエスケープするための De_dot filter plugin をインストールします。
下記コマンドでインストールします。

2. logstash.conf を作成

行数 説明
1-6 LogstashTcpSocketAppender の出力を受け取ります。
7-10 Elasticsearchでは「.」が特別な意味を持つため、MDC のキーに含まれる「.」を「_」に変更します。
11-16 受け取った JSON を Elasticsearch に取り込みます。
13 送信先となる Elasticsearch のアドレスを指定します。

logstash の設定の詳細については Configuring Logstash を参照してください。
De_dot filter plugin の設定の詳細については De_dot filter plugin を参照してください。

下記コマンドで Logstash を起動します。

3. WEB-INF/conf/log/im_logger_request_logstash.xml を配置

行数 説明
4-7 TCP を用いてログを JSON 出力します。
5 送信先となる Logstash のアドレスを指定します。ポート番号は logstash.conf の input の tcp port に設定した値を指定します。
9-12 リクエストログに上記の設定を適用します。

指定可能なオプションの詳細についてはLogback JSON encoderを参照してください。

4. logstash-logback-encoder-x.xx.jar を配置

Logstash Logback Encoder より logstash-logback-encoder-x.xx.jar をダウンロードします。
ダウンロードした jar ファイルを、WEB-INF/lib に配置します。

Accel Platform を起動し、アクセスすることで、ログが Elasticsearch に投入されます。
Kibana からインデックス名「request-*」で登録することで、データを表示することができます。

-CookBook

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

No.9 音声認識からスケジュール登録

この記事は、EWS 2017で行われたLogicDesignerの講演内容に関する記事です。 こちらの例では、LogicDesignerと音声認識(Web Speech API)の仕組みを利用して、音 …

ワークフローの参照者を動的に設定する

このCookbookでは、IM-Workflow 2018 Springから新たに追加された 処理対象者プラグイン「ロジックフロー(ユーザ)」 の設定方法を紹介いたします。 この機能を利用すると、申請 …

no image

Accel-Mart Plus on AWSにて複数のベースURLを利用する方法

製品標準の設定では、テナント一つにつき、一つの BaseURL のみが設定可能ですが、BaseUrlProvider インタフェースを実装することで、複数の BaseURL を持たせることができます。 …

IM-BloomMaker 「ファイルアップロード」エレメントの利用方法

このCookBookでは、 2020 Spring でリリースした「ファイルアップロード」エレメントの利用方法について説明していきます。 登録画面でアップロードしたファイルを別画面でダウンロードするこ …

no image

Formaのスクリプトから処理対象者を制御するには

このCookBookでは、スクリプトを利用してIM-Workflowの動的ノード(動的承認、縦配置、横配置)の処理対象者を制御する方法をご紹介します。 スクリプトから動的処理対象者設定機能を利用するこ …