あぐりログ・トラブルレポート

去る11月9日に、あぐりログの運用を開始して以来、最も大きなトラブルに遭遇しました。
ご利用の皆様には、多大なご心配とご迷惑をおかけすることになってしまいました。
ここで、重ねてお詫び申し上げます。

何が起きたのか

あぐりログのデータベースを消失しました。
毎日採取しているデータベースバックアップから復旧しましたが、当日分の計測データを欠測してしまいました。
欠測範囲は、
11/9 1:00 ~ 11/9 18:40
の全ハウスの計測データです。

更にデータベースを消失した事で、ログBOXからサーバにアップロードされて登録するという処理が実施不可能な状態となり
サーバ上で定期的に実施されるログBOXの稼働状態監視までも行うことができなくなりました。
この結果として、全ユーザに対して、個々のユーザのログBOXに不具合が発生している旨の障害通知メールを通知してしまうことに繋がりました。

何故起きたのか

原因はデータベースを直接操作している際のオペレーションミスです。
データベースの直接操作の目的は、一部管理データの作成と更新でした。
本来はシステムの機能として実装されたものを利用して行うべき所、データ設定を急ぐためにデータベースの管理画面から
直接操作し、押すべきでないボタンを押すというミスに起因したものです。

そして、こういったクリティカルな操作を行う作業を単独で実施する中で起きました。
小さな会社にありがちという言い訳は通るものではありません。
作業を指示した社長である自分の不注意に基づいています。

どうリカバリしたか

あぐりログでは、毎日午前1時にデータベースのフルバックアップを実行しています。
それを用いてデータベースを復旧しました。
サーバシステムがダウンしている間、ログBOXは自分のシステム側に計測データを蓄積していますから、サーバシステムの
復旧に伴い、蓄積されたデータは再度アップロードの対象となり、データベースに格納されます。
よって、一旦はサーバに正常に登録されたデータは、ログBOX上からは消去されてしまいます。
そして、リアルタイムなバックアップは採取していなかったため、バックアップから消失までの間のデータ
11/9 1:00 ~ 11/9 18:40頃(オペレーションミス発生時刻)
を復元することは不可能となりました。

ユーザ様への対応はどうしたか

緊急連絡の実施

アラートメールの宛先として登録されているメールアドレスに対して、緊急連絡通知を実施しました。
しかし、こういった事態でのメール一斉連絡のシステム化ができておらず、人手に因る作業となり、緊急と言いながら時間を要する結果となってしまいました。

現状でできるデータリカバリ作業の実施

バックアップがどこにあり、どうリカバリできるかを示したマニュアル等未整備で、在社していた者では対処できませんでした。
実際にバックアップを仕込んだ者でしか対応できず、リカバリ作業の遅延の原因にもなりました。

今後にむけた対策

今回の事案を受けて、以下を実施しました。

データの保全対策

・トランザクションログを採取する設定を実施しました。
・これを10分間隔で保全するようにします。(具体的手順を作成中です。)
・リアルタイムなバックアップを行う fabric ファイルを作成し手順自動化

オペレーションミスへの対策

・運用系データベースの直接操作は禁止
・開発系データベースでのSQLレベルでの動作確認後、複数人で確認して運用系に適用
・この適用作業の fabric ファイルを作成し余計な手順を含まないようにする。

リカバリ手順の構築

・リカバリを社員誰もが対応できるように fabric ファイルを作成し手順自動化

最後に

あぐりログは、栽培過程の環境データを自動で採取保存し何時でもどこでも検索し閲覧できる事を可能にしたシステムです。
しかし、今回の事態はそのシステムの根幹を揺さぶるものでした。
改めて、お詫び申し上げます。
そして、上記今後に向けた対策を確実に実施し、安心してモニタリングできる体制に持って行くことを約束いたします。