こんばんは。@muraken720です。
3日間に渡るElastic{ON}があっという間に終わってしまいました!
伝えたいことが多すぎて困ってしまいますが、少しでも雰囲気をお伝えできればと思います。
Elastic社APMチームのPMであるRasmusさん、Tech leadのRonさんらと共に記念写真。
今日参加したセッション
私が本日参加したセッションと概要は次の通りです。
- The State of Geo in Elasticsearch
- Elasticsearchの2.x => 5.x => 7.xのGeo周りの進化について。仕組みが体系的に説明され、なぜElasticsearchがGeo系の処理が得意なのかを説明してくれていた(と思う)。Vega/VegaLiteにも地図表現があるので増えたよ。
- Kubernetes, Docker, and Containers at Elastic: Monitoring, Logging, and More
- Kubernetes(k8s)でDockerコンテナを運用する上で実際に何をMonitoringするかについて。豊富なDashboardでの可視化例が参考になりました。
- Logs, Metrics, and APM: The Holy Trinity of Operations
- ログ、メトリクス、そしてAPM。なぜElasticsearchでこれらのデータを収集し、いま一つのスタックで分析できることの意味とは。複数の異なるindexを一つのグラフにまとめて可視化する例は非常に参考になりました。
- Managing the Elastic Stack in Production
- 実際にProduction環境になったらどのようにElastic Stackを管理しないといけないか。基本的な戦略が紹介されていたが、ちょっと学びが少なかったです。
- A Security Analytics Platform for Today
- セキュリティ関連のログをElasticsearchに入れて、ルールベースのAlertとMLを使った検知を行うという内容。残念ながらあまり学びがありませんでした。。。早めに終わったのでその足でSecurity Analyticsのデモブースに行ってGraphの話を聞きました。
- Lyft's Wild Ride from Amazon ES to Self-Managed Elasticsearch
その中から、今回は同じようなAPM製品を作ってきた自分たちとして、いろいろ思うところがあった「Logs, Metrics, and APM: The Holy Trinity of Operations」についてのレポートをお送りします。
APMの登場。Logs、Metrics、APMの特徴を理解する
まずは導入として、Logs、Metrics、APMとは何を指すのか?という定義から。
- Logs
- records of events
- Metrics
- periodic numerical measurements
- APM
- application performance monitoring
こういう現在地点をあらためて確認することで、これから複雑な話をするよ!というスタートは好きです。
前のせろ氏はあまり興味なさそうですが。
サーチエンジンであるElasticsearchがメトリクスの分析エンジン、APMへと進化する流れ
そこから話はサーチエンジンであるElasticsearchがなぜメトリクスの分析エンジンとなり、APMに繋がるのかについて、Elasticsearchの進化の歴史をポイントを挙げながら説明をしてくれました。
前のせろ氏は「歴史はいいから早くAPMを!」とぶつぶつ呟いていましたが、私としては、この流れは必然であり、この先に歩む道もまた当然行きつくべき先であるという力強いメッセージが感じられて好きです。
1つの技術スタックでLogs、Metrics、APMを扱うメリット
Elastic Stackとして、Logs、Metrics、APMのデータをまとめて扱えるようになると何が嬉しいのでしょうか。
ここでは統合されたダッシュボードによる分析、同じツールなので、同じ操作によるダッシュボードのカスタマイズ、ML、アラート設定などの利点が説明されていました。
異なるアプリケーションでバラバラにグラフを見るのではなく、一つにまとめてみたいし、一つのアプリケーションの中で行き来したいですよね。
実際にfilebeat, metricbeat, APMのデータを一つのVisualBuilderのグラフにする方法の紹介
こちらはライブデモで、実際にVisualBuilderを操作しながら、異なるindexのデータを一つのグラフに重ねていく様子です。
今後のロードマップ
ロードマップとして、次が挙げられていました。
- 新しいBeats Module/Logstash inputの登場
- 既にリリースされているModuleのDashboard、ML Job、Alertingの改善
- Agentless Shinppers
- 分散トレーシング
BeatsのModuleでML Job、Dashboard、Alertingの設定が自動的に作られる環境が整っていくのは嬉しいですね。Agentless Shipperはちょっと理解ができませんでしたが、分散トレーシングは分散システムのログを可視化する時の起点となる問題意識として私たちも持っているので、長年の課題を今の技術でどのように解決していくのか楽しみです。
また、他のセッションでも紹介されたのですが、このElastic Common Schemaを決めていく動きというのも要注目したいところです。
まとめ
というわけで、APMのセッションレポートをお届けしました。
うちの会社でもENdoSnipe APMというAPM製品を長らく開発してきており、目指している理想は非常に共感できるものでした。
昨日のAPMのセッションも含めると、自分たちが進んで来た過程や、今の立ち位置、この後の進む方向性についていろいろと考える機会と刺激を受けましたね。
冒頭の写真の通り、Elastic APMチームとは情報交換をしながらお互いに協力関係で進めて行きますので、ぜひENdoSnipeにもご期待ください!
その他にも紹介したいものがあるのですが、長くなってしまいますので、どこか勉強会などでフィードバックしたいと思います!
それでは皆さん、日本で会いましょう!
Acroquest Technologyでは、キャリア採用を行っています。
- データ分析(Elasticsearch、Python関連)、ビッグデータ(Hadoop/Spark、NoSQL)、Web開発(SpringCloud/SpringBoot、AngularJS)といった最新のOSSを利用する開発プロジェクトに関わりたい。
- マイクロサービス、DevOpsなどの技術を使ったり、データ分析、機械学習などのスキルを活かしたい。
- 社会貢献性の高いプロジェクトや、顧客の価値を創造するようなプロジェクトで、提案からリリースまで携わりたい。
- 書籍・雑誌等の執筆や、対外的な勉強会の開催・参加を通した技術の発信、社内勉強会での技術情報共有により、エンジニアとして成長したい。