Slide 1

Slide 1 text

Kyashの決済部分における Datadog監視事例 Inside Fintech Meetup 〜 Finatext x Kyash x FOLIO 〜 2020/09/15 株式会社 Kyash Paymentチーム 佐藤 聖也

Slide 2

Slide 2 text

2 佐藤 聖也(さとう せいや) - 2020年3月入社 - Paymentチーム所属 - Visa決済、QUICPay決済関係のお仕事 - 決済履歴の漢字対応とかとか。。。 自己紹介

Slide 3

Slide 3 text

3 01. 監視の構成/ツール 02. Datadogで利用している機能 03. 独自で監視しているもの 04. これから Agenda

Slide 4

Slide 4 text

01. 監視の構成/ツール

Slide 5

Slide 5 text

監視の構成/ツール サーバーやDB その他マネージドサー ビス Datadog PagerDuty Slack

Slide 6

Slide 6 text

02. Datadogで利用している機能

Slide 7

Slide 7 text

7 よく使っている機能 - ダッシュボード - Datadog Logs - APM Trace Datadogさん素晴らしい ↑ロゴもかわいい

Slide 8

Slide 8 text

8 - CPU使用率、I/Oなど基本的なメトリクス - 決済にかかっている時間 - Critical、Emergency Logの出力量 - 存在しないカード番号や有効期限間違いが発生しているオー ソリ要求の量 - etc... ダッシュボードに出しているもの(一部)

Slide 9

Slide 9 text

9 - CPU使用率、I/Oなど基本的なメトリクス - 決済にかかっている時間 - Critical、Emergency Logの出力量 - 存在しないカード番号や有効期限間違いが発生しているオー ソリ要求の量 ダッシュボードに出しているもの(一部) ←トラフィック、  サチュレーション ← レイテンシ ← エラー ↑ エラー 4大シグナルは把握できるようになっている

Slide 10

Slide 10 text

ダッシュボードの活用 - オフィスの大きい液晶にダッシュボードを出す - 現在フルリモートなので使えてない - チーム内で設定したSLI/SLOの確認 - 負荷試験を行う時に専用ダッシュボードを作る

Slide 11

Slide 11 text

ダッシュボードの余談

Slide 12

Slide 12 text

ダッシュボードの余談 テザリングでダッシュボードを見てると めっちゃくちゃギガが減る…らしい?

Slide 13

Slide 13 text

Datadog Logs - 使うのは基本的にリリース後や問題を検知したとき - Live Tailを意味もなく見ている - ログが流れるということは利用しているユーザー様がいる ということの証明 - 各マイクロサービスがどのようなログを出しているのか見 る - 当然カード番号など重要な情報はマスクされている

Slide 14

Slide 14 text

Datadog Logs のいいところ - SSHしてEC2にログインしなくてもログを見れる - ログが1箇所に集約される - Slackに貼るときログ詳細のURLを貼ればSlackの会話ログを 汚染しない

Slide 15

Slide 15 text

Datadog Logs を活用するために。。。 - 当たり前ではあるがノイズをへらすこと - 適切なログレベルにする - そもそもそのログ出力は今必要なのか?

Slide 16

Slide 16 text

APM Traces - 激重リクエストがあったときに何がどのくらいかかっているの か把握する - TracesをDurationでソートすると重いリクエストがわかる - リクエスト内で何がどれだけ時間を使っているか把握する - 激重クエリ?別のサービスが遅い?

Slide 17

Slide 17 text

17 ダッシュボードからTraceをすぐ確認できる ダッシュボードから把握できる Tracesへ即遷移できるのですぐ見に行ける

Slide 18

Slide 18 text

APM Traces - 快適な決済体験を実現するのに一番役に立っている - まだ完璧ではなくspanの設置の仕方はまだ模索中 - カジュアルに改善している

Slide 19

Slide 19 text

03. 独自で監視しているもの

Slide 20

Slide 20 text

独自の監視について - VisaのサーバーとのTCPコネクション - TCPコネクションは張りっぱなし

Slide 21

Slide 21 text

ある夜。。。 突然決済が失敗し始める 決済サーバーのログを見ても特に変な挙動をした様子もない

Slide 22

Slide 22 text

ある夜。。。 オンコール中にログなどからみんなネットワーク周りと予想は していたけど証明できるものがなかった しばらく経ち専用線サービスからの障害通知を遅れて受 け取る

Slide 23

Slide 23 text

対処 自分たちで把握しなければという課題感 - tcpdumpを使ってTCPコネクションの状態を確認できるス クリプトを設置 - 同様の症状が何度か発生したがスクリプトでFINが来てお り切断されたことを把握できるようになった

Slide 24

Slide 24 text

04. これから

Slide 25

Slide 25 text

まだまだ課題はたくさん - 今現状の監視で満足ということはない - より素早くサービスの状態が把握できるようにしたい - Twitterとか見てるとまだ把握しきれていない問題がありそ う - Twitterも優秀なモニタリングツール!? より快適な決済体験実現のため 改善を続けていきます!

Slide 26

Slide 26 text

We’re Hiring! Kyashではアプリエンジニア、サーバーサイドエンジニア、SREな ど様々な職種の募集を行っております! 一緒に新しいお金の文化を創っていきませんか? https://kyash.co/recruit @kyashrecruit_jp

Slide 27

Slide 27 text

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