Upgrade to Pro — share decks privately, control downloads, hide ads and more …

kintoneを丸裸にするモニタリング&ロギングツール / 20191108 kintone monitoring and logging

szkayeah
November 08, 2019

kintoneを丸裸にするモニタリング&ロギングツール / 20191108 kintone monitoring and logging

2019/11/08 6社の開発現場ツール大公開Night

szkayeah

November 08, 2019
Tweet

More Decks by szkayeah

Other Decks in Programming

Transcript

  1. サイボウズ株式会社 kintoneチーム
    鈴木 亜耶 @szkayeah
    2019/11/08 6社の開発現場ツール大公開Night
    kintoneを 丸 裸 にする
    モニタリング&ロギングツール
    キントーン

    View Slide

  2. 鈴木 亜耶 @szkayeah
    すずき あ や
    • Webエンジニア
    • 安定稼働に繋がる改善タスクが多め
    • 2017年1月にUターンで転職
    • 好き:CI・自動化・データ可視化
    • 大好き:紅茶

    View Slide

  3. 質問があればTwitterや懇親会で!
    ハッシュタグは#devtool_night
    発表資料は公開済です

    View Slide

  4. View Slide

  5. kintone
    • クラウドサービス
    • Webデータベース型の業務改善プラットフォーム
    • データ+コミュニケーション

    View Slide

  6. 今回、製品の詳細はお話しません。
    これを対象にしたモニタリング・ロギングの話です。

    View Slide

  7. View Slide

  8. モニタリング
    • 2つの監視サービスを併用している
    • Infrastructure:Datadog
    • APM:New Relic
    引用: https://www.datadoghq.com/ , https://newrelic.com/

    View Slide

  9. Infrastructure:Datadog
    • サイボウズは自社クラウド基盤を持つ
    • 割とヘビーに活用している
    • 機材故障の検知にも有効(特定機材のみ高負荷が続く等)
    • カスタムメトリクスで業務的な監視も
    • バッチのキューが滞留していないか?
    • どれくらい製品のトライアルの申し込みがあったか? etc

    View Slide

  10. Integrationを導入するだけでもサクッと監視できる
    例:Java Integration
    障害時のスパイク

    View Slide

  11. カスタムメトリクスでより業務的な監視も
    バッチのキューが
    滞留している様子

    View Slide

  12. APM:New Relic
    • アクセス障害時の重いトランザクション特定
    • マルチテナントのサービスのためテナント間で影響がある
    • どのテナントのどの操作が重そうか分かる
    • 重いトランザクションは自動的に記録される(便利)

    View Slide

  13. 重いトランザクションを簡単に検知
    障害時のスパイク

    View Slide

  14. Datadog VS New Relic
    • Datadog APM も New Relic Infrastructure もある
    • どうしてまとめないの? → 歴史的経緯です
    • どちらも良いところがある
    • Datadogの豊富なIntegration
    • New Relicの柔軟なクエリ(NRQL)

    View Slide

  15. もっと自由にデータ可視化したい
    • Elasticsearch+Kibana
    • 監視サービス標準ではやりたいデータ可視化ができない時
    • 収集方法が異なるデータをマッシュアップしたい時
    • 各監視サービスでAPIが提供されている
    引用: https://www.elastic.co/

    View Slide

  16. 監視サービス+Elasticsearch+Kibana
    引用: https://www.elastic.co/ , https://www.datadoghq.com/ , https://newrelic.com/
    自社ツール
    APIでメトリクス取得

    データ加工

    Elasticsearchに投入
    メトリクス収集
    データ可視化

    View Slide

  17. 監視サービス+Elasticsearch+Kibana
    SLO閾値超えを
    しているか
    hostごとの
    アクセス性質を見る

    View Slide

  18. View Slide

  19. ロギング
    • サイボウズのログ基盤
    • よくある所だとアクセスログやアプリケーションログ
    • MySQLのエラーログやslowログ
    • 自社クラウド基盤を持つため物理機材のログも
    • VM・物理機材を合わせて1000を超えるhost(大量ログ)
    →高速で安定して(欠損せず)ログが活用できる基盤が必要

    View Slide

  20. サイボウズのログ基盤 2018年版
    https://blog.cybozu.io/entry/2018/03/19/080000

    View Slide

  21. ログ基盤の全貌(ブログ記事より)
    https://blog.cybozu.io/entry/2018/03/19/080000
    引用: https://hadoop.apache.org/ , https://hbase.apache.org/ , https://hive.apache.org/ , https://kafka.apache.org/ ,
    https://www.elastic.co/ , https://www.graylog.org/ , http://prestodb.github.io/ , https://redash.io/

    View Slide

  22. ログ基盤の活用
    • ログ基盤自体についてはブログ記事をご参照ください
    • 私は開発に関わっていないので…(小声)
    • 今回は偉大なログ基盤を利用者観点で紹介します
    • 障害対応, 製品分析でよく利用するため

    View Slide

  23. ログ基盤の全貌(ブログ記事より)
    https://blog.cybozu.io/entry/2018/03/19/080000
    引用: https://hadoop.apache.org/ , https://hbase.apache.org/ , https://hive.apache.org/ , https://kafka.apache.org/ ,
    https://www.elastic.co/ , https://www.graylog.org/ , http://prestodb.github.io/ , https://redash.io/
    あらゆる種類の
    ログの閲覧

    View Slide

  24. 共通のログ閲覧方法
    • あらゆるログは同じ方法で閲覧できる
    • ログ種類・日時・hostで絞り込み
    • 2つのアクセス手段
    • CLI(HBase client)
    • GUI(Elasticsearch+Graylog)

    View Slide

  25. 共通のログ閲覧方法
    • CLI(HBase client)
    • 長期間のログが閲覧可
    • いわゆるテキストなので流し読みしやすい
    • GUI(Elasticsearch+Graylog)
    • 短期間(1週間ほど)だが複数hostを高速に閲覧可
    • エラーコードが分かる時など特定行の検索が得意
    • データ可視化

    View Slide

  26. アプリケーションログよりkintoneの利用状況を可視化

    View Slide

  27. ログ基盤の全貌(ブログ記事より)
    https://blog.cybozu.io/entry/2018/03/19/080000
    引用: https://hadoop.apache.org/ , https://hbase.apache.org/ , https://hive.apache.org/ , https://kafka.apache.org/ ,
    https://www.elastic.co/ , https://www.graylog.org/ , http://prestodb.github.io/ , https://redash.io/
    アクセスログ活用

    View Slide

  28. アクセスログ活用
    • Presto+Redash
    • SQLライクにログを検索
    • CLIでログを読めるエンジニアでも嬉しい
    • Prestoの便利関数が利用できる(url_extract_path等)
    • Redashのデータ可視化

    View Slide

  29. アクセスログ活用
    • 加工したデータの列を追加してより検索しやすく
    • 製品(service)
    • kintone, garoon などで絞り込める
    • 「URLが /k/ 始まりのやつ」と指定しなくて良い
    • ブラウザ(browser)
    • UAってめっちゃ文字入ってますよね
    • Mozilla/5.0 (Linux; Android 10; Pixel 3a Build/QP1A.190711.020; wv) AppleWebKit/537.36...
    • Chrome, IE11 などで絞り込める

    View Slide

  30. アクセスログから楽々データ可視化

    View Slide

  31. あらゆるツールを組み合わせて
    メトリクスやログを収集&可視化し
    kintoneを丸裸にしています

    View Slide

  32. ありがとうございました!!

    View Slide