Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

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

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

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

Slide 10

Slide 10 text

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

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

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

Slide 16

Slide 16 text

監視サービス+Elasticsearch+Kibana 引用: https://www.elastic.co/ , https://www.datadoghq.com/ , https://newrelic.com/ 自社ツール APIでメトリクス取得 ↓ データ加工 ↓ Elasticsearchに投入 メトリクス収集 データ可視化

Slide 17

Slide 17 text

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

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

ログ基盤の全貌(ブログ記事より) 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/

Slide 22

Slide 22 text

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

Slide 23

Slide 23 text

ログ基盤の全貌(ブログ記事より) 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/ あらゆる種類の ログの閲覧

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

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

Slide 27

Slide 27 text

ログ基盤の全貌(ブログ記事より) 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/ アクセスログ活用

Slide 28

Slide 28 text

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

Slide 29

Slide 29 text

アクセスログ活用 • 加工したデータの列を追加してより検索しやすく • 製品(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 などで絞り込める

Slide 30

Slide 30 text

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

Slide 31

Slide 31 text

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

Slide 32

Slide 32 text

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