こんにちは。 デジタルビジネス推進室(デジビ)の関根です。
前回に引き続き、intra-martのログ分析の手法を紹介します。
本記事の前提条件
・KNIME 3.6.1
・intra-mart Accel Platform 2018 Summerのログ
・リクエストログの設定は以下になります。
[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] %X{log.report.sequence} %-5level %logger{255} %X{tenant.id} %X{log.id} - %X{client.session.id} %X{request.remote.host} %X{request.method} %X{request.url} %X{request.query_string} %X{request.url.referer} %X{request.page.time} %X{request.accept.time} %X{request.id}%nopex%n
この記事のゴール
intra-mart Accel Platform のリクエストログをKNIMEに取り込み、
期間毎の同時リクエスト数や処理時間等を一覧化します。
これにより、どの時間帯にユーザのアクセス数が上昇するか、同時リクエスト数はいくつか等を見ることが可能になります。
KNIMEインポートファイルはこちら:期間別統計レポート
まず初めに…
ログの取り込み・整形は前回のブログ記事をそのまま使用しますので割愛!
今回はログファイル以外にも、
thread-maxの設定が記載されているxmlファイルを取り込んでいます。
次に…
最後に…
整形したログから、期間別集計の一覧を作成します。
GroupByを使用して、集計期間毎にスレッド数(Count)、
ユニークセッションID(Unique Count)、ページ処理時間の最大、最小、中央、90%ile、平均、合計、標準偏差を求めます。
まとめ
今回は期間を基準にリクエスト数や処理時間を求めてみました。
同時リクエスト数を求めるところが若干手間ですが、
あまり複雑な処理もなく実装ができました。
また、intra-martの設定ファイルを組み合わせることもできました。
今後もこのフローを拡張していきたいと思います!
おまけ
ノードが増えることによって可読性が落ちていくので、
必要に応じてメタノード化を行いましょう。(by生田)
[…] 過去のKNIMEに関連する記事はこちら! ・intra-mart BIORAブース – サーモセンサーとAI音声チャット ・KNIMEを使ったintra-martのログ分析 – 1 – ・KNIMEを使ったintra-martのログ分析 – 2 – […]