昨日(11/11)のログイン障害について

いつもFeedeenのご利用ありがとうございます。運営者の伊藤です。

昨日(11/11)の早朝から昼過ぎにかけて、Feedeenにログインできない障害が発生しました。影響を受けた皆様、たいへん申し訳ございません。以下、今回の障害の詳細についてご報告させていただきます。

障害の経過

ログを確認する限り、障害が発生し始めたのは11日の午前6時頃と思われます。Google の OpenID Connect を利用したアカウントのログイン処理(明示的にログイン操作を行わなくても、アカウントの確認のため数時間ごとにログイン処理が行われます)に失敗し、「Googleアカウントの認証に失敗しました」という画面が表示される状態が続きました。

その間、皆様から多数のご報告をいただいたのですが、運営者が気づいたのは昼過ぎ(13:30頃)となってしまいました。理由は私事で恐縮なのですが、前の晩の未明まで作業をしており、午前中は休んでおりました。せっかくのご報告を活かすことができず、たいへん申し訳ありません。

障害の発生を認識した後、SNS等でアナウンスを行いつつ状況の把握を行い、まずはフロントエンドサーバーの再起動を行いました。これによりひとまず問題が解消できたため、14:00頃にいったん問題解消のアナウンスをさせていただきました。

さらにログなどを詳細に調査して原因究明を進めたところ、後述の原因が判明したため、コードの修正と動作確認等を行い、本日(11/12)の午前1:00に根本的な修正を施したバージョンをリリースいたしました。

障害の原因

結論から言うと、今回の障害の原因は、先日リリースした新しいフロントエンドサーバーにおける実装ミスが原因でした。Googleアカウントを認証するためには、定期的に最新の証明書をGoogleから取得する必要があります。しかし、新しいフロントエンドサーバーにおいては、この証明書取得処理を起動時の一回しか実行しておらず、定期的に実行する部分が実装漏れしておりました。おそらく昨日の朝6時頃にGoogle側で証明書が切り替わり、それ以降、認証処理がすべて失敗するようになったものと思われます。

一人で実装作業をしているため厳密な残作業管理ができておらず、フロントエンドサーバーの再実装に伴う大量の作業項目をこなす上で破綻が起きてしまったと考えております。今後は細かい作業でもきちんとチケットを起こすなどして、再発を防止してまいります。

対処内容

前述のとおり、フロントエンドサーバーを再起動することで最新の証明書に更新され、一時的に問題が解消されました。しかし、このままではいずれまた証明書の更新が実行された際に問題が再発してしまいます。

そこで、恒久的な対処として、証明書の更新処理を定期実行し、さらに更新が完了した旨をログに記録する処理を実装しました。修正後のバージョンを本日1:00にリリースし、後ほどログで更新が正しく行われたかどうかを最終的に確認します。


今回の障害では多くの方々にご不便をおかけしてしまい、たいへん申し訳ございません。障害によるサービス停止を避けるよう、引き続き改善を進めてまいります。今後とも Feedeen をよろしくお願いいたします。


コメント

このブログの人気の投稿

HTMLからフィードを生成できるようになりました

5月2日(水)午前 1:00〜3:00 メンテナンスのためサービスを停止します

SSL証明書をLet's Encryptに変更しました