Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
U30エンジニアだからこそ実現できた劇的ビフォーアフター #bcu30
Search
Hiroki Tanaka
April 21, 2018
1
4.1k
U30エンジニアだからこそ実現できた劇的ビフォーアフター #bcu30
Hiroki Tanaka
April 21, 2018
Tweet
Share
More Decks by Hiroki Tanaka
See All by Hiroki Tanaka
ISUCONボツ技かるた / ISUCON Reject Karuta
dabits
0
63
DockerCIビルドを一歩先へ Buildkitを運用前提で試食してみた / Docker ci with buildkit
dabits
0
120
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
29
2.8k
4 Signs Your Business is Dying
shpigford
179
21k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
What's new in Ruby 2.0
geeforr
340
31k
How To Stay Up To Date on Web Technology
chriscoyier
786
250k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
What's in a price? How to price your products and services
michaelherold
242
11k
The Invisible Customer
myddelton
119
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
Infographics Made Easy
chrislema
239
18k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.9k
Transcript
©2018 Ateam Lifestyle Inc. U30エンジニアだからこそ実現できた 劇的ビフォーアフター 株式会社エイチーム ライフスタイルサポート事業本部 エイチームライフスタイル 技術開発部
リードエンジニア 田中宏紀
©2018 Ateam Lifestyle Inc. 自己紹介/経歴紹介 所属 : エイチームライフスタイル 技術開発部 リードエンジニア
名前 : 田中宏紀 a.k.a だびっつ Id : @dabits 経歴 : ・misocaの前身, 受託の開発 ・サン電子 BLのソシャゲ開発/運営 ・金融事業->ヘルスケア事業->技術開発部 趣味 : アニソンDJ
©2018 Ateam Lifestyle Inc. 会社紹介/事業紹介 ・株式会社エイチーム ・本社: 名古屋/ 東京・大阪・福岡オフィス ・エンターテインメント事業 EC事業
・ライフスタイルサポート事業
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. テーマ : U30・技術浸透・ビフォーアフター ・学生・新卒と話す機会が多かった ・エンジニア≒新しい技術が好き ・好きな技術を浸透させきれずもったいない人も
©2018 Ateam Lifestyle Inc. どういった手順を踏んで 浸透させたのかを事実ベースで
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. 2017年7月〜2018年2月にやってきたこと
©2018 Ateam Lifestyle Inc. やってきたこと
©2018 Ateam Lifestyle Inc. やってきたこと ・Excel手動集計,エンジニア都度集計 →Redash+Prestoで自動化 ・Redmineのチケット運用&コマンドでリリース →Gitlab+Gitlab-CIで自動化 ・デザイン確認待ち中別環境作って開発
→デザイン確認用環境をDocker+ECS+Gitlab-CI自動作成へ ・障害検出報告がメールのみで行われる文化 →Kibana+ElastAlert+Newrelic+Sentry+Chatworkへ
©2018 Ateam Lifestyle Inc. スライド枚数150枚超え
©2018 Ateam Lifestyle Inc. スライド枚数150枚超え
©2018 Ateam Lifestyle Inc. やってきたこと ・Excel手動集計,エンジニア都度集計 →Redash+Prestoで自動化 ・Redmineのチケット運用&コマンドでリリース →Gitlab+Gitlab-CIで自動化 ・デザイン確認待ち中別環境作って開発
→デザイン確認用環境をDocker+ECS+Gitlab-CI自動作成へ ・障害検出報告がメールのみで行われる文化 →Kibana+ElastAlert+Newrelic+Sentry+Chatworkへ
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. ここからビフォーアフター フォーマットで お送りします
©2018 Ateam Lifestyle Inc. ビフォー : 障害検出報告メール文化 ・太古の昔、障害検出フローがメールベースで整えられた ・時が数年経ち、事業・人数が増えると... デーモンログ
アプリケーションログ収集 サーバメトリクス収集 内製ログ→メールスクリプト
©2018 Ateam Lifestyle Inc. ビフォー : 障害検出報告メール文化 ・サービス数分だけログが増えて鳴り止まないメール ・担当者が定まらず一丸で対応にあたるので疲弊 ・メンテされずスルーしてくださいが増えオオカミ少年化
©2018 Ateam Lifestyle Inc. やっとれん
©2018 Ateam Lifestyle Inc. でも
©2018 Ateam Lifestyle Inc. 長い期間フローが定着してしまっているので 急には変えづらい
©2018 Ateam Lifestyle Inc. どう乗り越えたか
©2018 Ateam Lifestyle Inc. リフォームの全貌を お見せしましょう
©2018 Ateam Lifestyle Inc. 匠の技1 : Mail2Chatworkを準備 ・内製のLambdaスクリプト ・メール送るとLambda経由でChatworkAPIに投げてくれる ・個別にチャットのToが送れるように拡張
保存 APIで投稿 AWS Lambda イベントフック AWS S3 AWS SES
©2018 Ateam Lifestyle Inc. 匠の技1 : Mail2Chatworkを導入 ・アプリエラーログ通知をメールからチャット通知に変更 ・緊急対応=メール、気づいたら対応=チャットのフローへ
©2018 Ateam Lifestyle Inc. とりあえず 緊急対応件数は減りました
©2018 Ateam Lifestyle Inc. 匠の技2 : ElastAlertを準備 ・Yelp社製OSS ・Elasticsearchに定期的にクエリを投げて監視 ・しきい値に達したらAlertアクションを実施
ログ集約 保存 定期的に監視 検出したら発報 Fluentd Elasticsearch ElastAlert
©2018 Ateam Lifestyle Inc. 匠の技2 : ElastAlertを導入 ・優先度高いエラーをメールで発報 ・優先高=ユーザに直ちに影響がある ・5xx系エラー
・レスポンス遅延
©2018 Ateam Lifestyle Inc. 本当に対応すべき障害が 判るようになりました !重要! 軽め
©2018 Ateam Lifestyle Inc. 匠の技3 : Sentryを準備 ・アプリに組み込むとエラーを収集してIssueにしてくれる ・新規・件数跳ねたエラーを通知してくれる 検出したら発報
SDKがログを送信
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. 匠の技3 : Sentryを導入 ・チャットに流していたアプリエラーを止めSentryへ移管 ・新規エラーと件数スパイクはメールで通知されるように
©2018 Ateam Lifestyle Inc. 本当に修正すべきバグが 判るようになりました !重要! 軽め
©2018 Ateam Lifestyle Inc. 匠の技4 : 通知先をチャットへ ・緊急対応の対象をメール→チャットへ変更するとアナウンス ・ElastAlert・Sentryからの通知を全てMail2Chatwork経由に
©2018 Ateam Lifestyle Inc. その結果...
©2018 Ateam Lifestyle Inc. アフター : 担当者が率先して気付き対応 ・影響がある事業の担当者にToが付くようになった ・自身の担当している事業の障害に気付きやすくなった
©2018 Ateam Lifestyle Inc. アフター : 返信やディスカッションが迅速に ・メールはレスポンス遅い、チャットは早い ・対応者への打ち返しが速くなった
©2018 Ateam Lifestyle Inc. アフター : 勤務時間外対応の判断が迅速に ・ElastAlertからの通知を基本的に対応要とする ・必要な情報は本文にほぼ記載
©2018 Ateam Lifestyle Inc. 無事にリフォーム完了
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. 進めてみて 大切だと感じたところ
©2018 Ateam Lifestyle Inc. 大切だと感じたところ 1. 入れたい技術とニーズを結びつける ・組織にはまらない技術はエゴになりがち =浸透しにくい
©2018 Ateam Lifestyle Inc. 大切だと感じたところ 2. 定着できるペースを考えて進める ・急に変えたり強行すると定着しない ・期限は決めるけど長い目でみる
©2018 Ateam Lifestyle Inc. 大切だと感じたところ 3. 「新しいかどうか」より 「気持ちいいかどうか」で決める ・新しくてもしんどい技術は長く続かない
©2018 Ateam Lifestyle Inc. 気持ちいい最新の技術を追えるのはU30だけ
©2018 Ateam Lifestyle Inc. 若いからこそのセンスを活かして 社内に技術の革命を起こそう!
©2018 Ateam Lifestyle Inc. ご清聴ありがとうございました
©2018 Ateam Lifestyle Inc.