JJUGナイトセミナーに行ってきました!
jjug.doorkeeper.jp
初めて日本オラクル本社に行きました!
今回はレポート少なめですが、書き殴っていきます。
Elastic Stackで始めるJavaアプリのパフォーマンス監視
- Beats
- データを集めて後ろに投げることが主目的で軽量である。Go言語で作られている。
- Libbeat
- カスタムbeatsのためのAPIフレームワーク
- Packetbeat, Metricbeat, Winlogbeat, Auditbeat, Filebeat, Heartbeat
- Logstash
- Rubyで作られている。データ加工パイプライン
- Elasticsearch
- 全文検索エンジン, Apache Luceneを使っている。
- Kibana
- Elasticsearchのデータを可視化。可視化と分析。
- サンプルサイト:
- Elastic APM
- アプリケーションパフォーマンスモニタリング
- アプリケーションの内部パフォーマンスを可視化
- ユーザーアクションを計測するRUMというものもある。現在はJavascriptのフロントエンド用
- APMサーバーが必要。x-pack basicでKibana API UIを構築
- GitHubでソースが公開されているけど、オープンソースではない。無料では使える。
- Python, Node.js, Rubyがサポート。JS, Go Javaはβ提供。
- elasic-apm-agentでmaven検索で取得できる。
- アプリケーションパフォーマンスモニタリング
所感
視覚的にアピールできるKibanaはセミナーでとりあげられることが多い。
しかしながら、モニタリングツールは他にもたくさんある。
特にIaaSを利用しているなら標準モニタリングもあるだろう。
既に可視化できる環境を持っているのならば、
Kibanaをモニタリング目的だけで導入するというのは、
判断する人(上司)を振り向かせることが難しいと思う。
むしろ、大事なのは中核をなす機能であるElasticsearchだ。
GitHubの検索に使われているという実績は大きい。
私は今まで全文検索エンジンを利用した業務システムを構築した経験はないが、
この機会に各ソフトウェアやエンジンについてより深く知りたい。
Elasticsearch - Wikipedia
Apache Lucene - Wikipedia
Apache Solr - Wikipedia
ナイトセミナー楽しかった!また来月いけたらいいなぁ。