Slide 1

Slide 1 text

Copyright © GREE, Inc. All Rights Reserved. Copyright © GREE, Inc. All Rights Reserved. Sumo Logic活用事例とその運用 Hiroaki Kobayashi 2019-02-21

Slide 2

Slide 2 text

Copyright © GREE, Inc. All Rights Reserved. 小林 裕明 ● 所属: グリー株式会社 開発本部 インフラストラクチャ部 ● 業務: ● プロダクトリリース・運用支援 ● モニタリングシステム運用 自己紹介

Slide 3

Slide 3 text

Copyright © GREE, Inc. All Rights Reserved. 話すこと ● グリーにおけるログ分析基盤 ● ユースケース ● 導入する上でのTips ● 利点・欠点 話さないこと ● 競合サービス/OSSとの比較 アジェンダ

Slide 4

Slide 4 text

Copyright © GREE, Inc. All Rights Reserved. ● グリーにおけるログ分析基盤 ● ユースケース ● 導入する上でのTips ● 利点・欠点 アジェンダ

Slide 5

Slide 5 text

Copyright © GREE, Inc. All Rights Reserved. ● アプリケーションのデバッグ ● 正しい振る舞いができているかを検査する ● 障害の原因調査・パフォーマンスのボトルネック特定 ● ミドルウェアが正常に処理できているか ● セキュリティ・監査 ● 誰がいつ何をしたか証跡を残す ● ユーザ分析 ● ページ遷移・離脱など行動の分析 ログの用途

Slide 6

Slide 6 text

Copyright © GREE, Inc. All Rights Reserved. ● アプリケーションのデバッグ ● Sumo Logic ● 障害の原因調査・パフォーマンスのボトルネック特定 ● 状態監視: 内製基盤 ● パフォーマンス分析: Sumo Logic, NewRelic, 内製基盤 ● セキュリティ・監査 ● CloudTrail: Sumo Logic ● その他: 内製基盤 ● ユーザ分析 ● 内製基盤 グリーにおけるログ分析基盤

Slide 7

Slide 7 text

Copyright © GREE, Inc. All Rights Reserved. ● グリーにおけるログ分析基盤 ● ユースケース ● Application / Middleware Log ● CloudTrail ● Alert Report ● Grafana Integration ● 導入する上でのTips ● 利点・欠点 アジェンダ

Slide 8

Slide 8 text

Copyright © GREE, Inc. All Rights Reserved. ● Application Log ● ex: php.log, app.log ● 全文検索やLog Reduceでバグ調査 ● デプロイ時にLive Tailでエラー確認 ● 独自ダッシュボードを作成している部署もある ● Middleware Log ● ex: mysql error/slow log, apache error ● App Catalogで簡単にダッシュボードが作成可能 ● Sumo LogicはCloudNativeな要件にも対応 ● インスタンスのライフサイクルとは独立したログ管理 ● Service, Roleなど任意の集合に対する検索 Application / Middleware Log

Slide 9

Slide 9 text

Copyright © GREE, Inc. All Rights Reserved. 簡単なクエリでも十分に効果を発揮する Application / Middleware Log

Slide 10

Slide 10 text

Copyright © GREE, Inc. All Rights Reserved. 既存のダッシュボードから知見を享受できる Application / Middleware Log

Slide 11

Slide 11 text

Copyright © GREE, Inc. All Rights Reserved. Architecture Application / Middleware Log (event) CreateLogGroup EC2 Aurora RDS CloudWatch Logs Connector Subscriber Subscription Filter Refs ● https://github.com/SumoLogic/fluentd-output-sumologic ● https://github.com/SumoLogic/sumologic-aws-lambda

Slide 12

Slide 12 text

Copyright © GREE, Inc. All Rights Reserved. ● 全AWSアカウントのCloudTrail LogをSumo Logicへ集約 ● 全アカウントに対する横断検索も容易 ● 地味に全文検索が活躍 CloudTrail

Slide 13

Slide 13 text

Copyright © GREE, Inc. All Rights Reserved. Architecture CloudTrailの収集 CloudTrail CloudTrail CloudTrail CloudTrail CloudTrail S3 Sender

Slide 14

Slide 14 text

Copyright © GREE, Inc. All Rights Reserved. ● アラートもログとしてSumo Logicへ送信 ● 前週発生したアラートを集計しSlackへ定期通知 ● アラートの削減・恒久対応に利用 Alert Report

Slide 15

Slide 15 text

Copyright © GREE, Inc. All Rights Reserved. Architecture Sumo LogicでScheduling, Notification全て完結 Alert Report Scheduled Search Webhook Connection Webhook Webhook

Slide 16

Slide 16 text

Copyright © GREE, Inc. All Rights Reserved. GrafanaでSumo Logicのログを表示する Grafana Integration

Slide 17

Slide 17 text

Copyright © GREE, Inc. All Rights Reserved. Architecture Grafana Integration Sumo Logic Data Source Search Job API Refs ● https://github.com/mtanda/grafana-sumologic-datasource

Slide 18

Slide 18 text

Copyright © GREE, Inc. All Rights Reserved. ● グリーにおけるログ分析基盤 ● ユースケース ● 導入する上でのTips ● 収集するログの精査 ● Metadataの設計 ● 利点・欠点 アジェンダ

Slide 19

Slide 19 text

Copyright © GREE, Inc. All Rights Reserved. 無作為にログを溜めない ● ログは肥大化しやすい ● 時系列で分析したいものだけを送る ● Application, Middleware, … ● 自社基盤と役割が重複しないよう住み分けをする ● Access Log: 内製データ分析基盤 ● Error Log: Sumo Logic ● Status Check, Alerting: 内製監視基盤 Tips1: 収集するログの精査

Slide 20

Slide 20 text

Copyright © GREE, Inc. All Rights Reserved. ● Metadataは権限やCollectorを管理する上で重要 ● _collector, _sourceHostはデフォルトで同値 ● 権限管理に有効な命名規則にする ● ex1: _collector= ● ex2: _sourceCategory=_ ● _sourceHostは自社基盤や運用との相性を考える ● IP, HostName, InstanceId, ... Tips2: Metadataの設計

Slide 21

Slide 21 text

Copyright © GREE, Inc. All Rights Reserved. グリーでの設計例 ● _collector: プロダクト名 ● _source: ミドルウェアなどログの種類 ● _sourceCategory: 一意な識別子 Tips2: Metadataの設計 Apache Error MySQL Slow Foo Log Apache Error MySQL Slow Bar Log Nginx Error MySQL Slow Baz Log Product A Product B Product C

Slide 22

Slide 22 text

Copyright © GREE, Inc. All Rights Reserved. ● グリーにおけるログ分析基盤 ● ユースケース ● 導入する上でのTips ● 利点・欠点 アジェンダ

Slide 23

Slide 23 text

Copyright © GREE, Inc. All Rights Reserved. ● 平均データ転送量からなる費用体系 ● スパイクを許容した料金設計 ● 新規リリースや突発的なアクセス増加 ● 共通基盤, IaaSの大障害 ● リソースのキャパシティプランから開放される ● ストレージのコスト最適化 ● 全文検索に対応するための計算リソース確保 ● スパイクを処理するためのスケール戦略 Sumo Logicの利点

Slide 24

Slide 24 text

Copyright © GREE, Inc. All Rights Reserved. ● クエリの学習コスト ● 仕方ない ● チートシート作成や布教活動を通して習得してもらう ● 全員が全ての機能を使えなくても良いと割り切る ● 個人向けユーザへ開放されていない ● 検証に対するハードルが少し高い ● Weekend Projectなどでは利用できない Sumo Logicの欠点

Slide 25

Slide 25 text

Copyright © GREE, Inc. All Rights Reserved. ● グリーにおけるユースケース紹介 ● Application / Middleware Logの時系列分析 ● CloudTrailの横断検索 ● Alert Reportの通知 ● Grafana Integration ● 導入する上でのTips ● ユースケースを考えてログは送る ● Metadataは運用しやすいよう設計する ● 利点: 柔軟な料金体系とスケーラビリティ ● 欠点: 利用者の学習コスト まとめ

Slide 26

Slide 26 text

Copyright © GREE, Inc. All Rights Reserved. Copyright © GREE, Inc. All Rights Reserved. インターネットを通じて、 世界をより良くする。

Slide 27

Slide 27 text

Copyright © GREE, Inc. All Rights Reserved.