システム障害について

回答済み

コメント

5件のコメント

  • 正式なコメント
    Kompiraサポートチーム

    お世話になっております。

    システム障害について、ご迷惑をおかけし大変申し訳ございません。

    今回の障害は急激な処理負荷集中により受信メッセージに対するイベント発行処理に大幅な遅延が発生した、というものでございました。
    またこれに対する対応としてデータベースの処理能力の増強を行った際にサーバー再起動が発生したことで、5分程度の間、画面アクセス時に500エラーが出力される事象が発生いたしました。

    期間内に受信したメッセージに対する処理は遅れて処理されるものと思われます。

    異常の確認に関しましては提示いただいた方法では難しく(例えば今回のケースでもスペースへのアクセス自体は可能となっております)、障害ケースによって検出方法は多岐にわたりますので、お客様側で検出するのは困難かと存じます。
    今回のケース含め、弊社内での監視システムにより障害は検出され、ユーザー様に対しては随時情報公開を行なっておりますので、そちらをお待ちいただくようお願いいたします。

    コメントアクション パーマリンク
  • HM

    お世話になっております。
    ご回答ありがとうございました。

    当方では Kompira cloud の社内説明をしている最中で「HTTPError 500」が表示され、時間的には1時間近く続いたと認識しております。
    最中、全てのアクションとトリガーが表示されないという事象が発生し、11:47にテストメールを送信し、ルールは一致しておりますが、いまだにアクションの起動要求はなく、Pigeon の架電も動作しておりません。
    したがいまして、
    「HTTPError 500」の継続時間と、「遅れて処理される」という点については食い違っております。

    御社の障害情報については確認しておりましたので、その点は周知いたしましたが、受信したメールのトリガー以降の動作がその時点で停止(終了)しております。
    この点について、お考えをご教示いただけますでしょうか?

    0
    コメントアクション パーマリンク
  • Kompiraサポートチーム

    先程回答させていただいた内容と実際の挙動との相違があるとのことで、不正確なことを申し上げてしまい大変申し訳ございません。
    大至急調査させていただいておりますので、分かり次第追ってご報告させていただきます。

    0
    コメントアクション パーマリンク
  • Kompiraサポートチーム

    お世話になっております。
    事象に関する詳細調査および対応の検討を行いましたので、諸々ご報告させていただきます。

    事象:「HTTPError 500」の継続的な発生について

    こちらの事象について、追加調査により「アクション」「トリガー」の情報取得が長期的に500エラーになっていたことが判明いたしました。

    今回の障害は元々は負荷集中によりデータベースサーバーの処理能力を超え、イベント発行の遅延につながったものでございましたが、この改善を試みる過程で2回のデータベースサーバー再起動を行なっております。このときAlertHubを構成する各サーバーはデータベースとの再接続を行いますが、うち2つのサーバーにおいて再接続の確立が上手くいっておりませんでした。

    結果、 11:28 ごろから 13:11 ごろにかけて、イベント発行の遅延に加えて下記のような問題が発生しておりました。

    • アクション・トリガーに関する一部情報の取得に失敗する
    • トリガー処理が失敗する(後述)

    前者の影響により、「アクション・トリガーの設定を見ようとすると500エラーが発生する」という事象が長時間にわたり発生いたしました。

    一方で弊社での障害対応時には「スコープ一覧」の表示で動作確認を行なっていたことがわかり、この画面は本事象の影響を受けていなかったことで、事象の見落としが発生してしまっておりました。

    事象:後追いで行われるはずのアクション実行が行われなかったことについて

    前項で触れた「データベースとの再接続に失敗した」問題はトリガー処理を行うサーバーにも影響しておりました。これが原因で、 11:47 に受信したメールに対してイベント発行は 12:34 に行われたものの、それに対するトリガー処理が立ち消えてしまっておりました。

    以下、細かな経緯を記載いたします。

    AlertHubではイベントの発生を契機にトリガーの処理を行いますが、この時データベースへのアクセスを行います。これに失敗すると1分の間を置いて処理のリトライが行われますが、これは10回が上限となっております。今回はデータベースとの接続が長期的に失われたことで、このリトライ上限を超過し、トリガー処理、ひいてはアクション実行が立ち消えてしまい、Pigeon連絡が行われない事態になっておりました。

    本来、データベースの長期的な障害が発生した場合はイベント発行自体が行うことができないため、イベントに関しては非常に強力なリトライ機構を用意しております。
    一方トリガー処理は(データベースを使用する)イベント発行の直後に行われるため、想定する接続断の最大時間としては一時的なデータベースサーバーの再起動(最大5分程度)として、上記の基準でのリトライを行なっております。

    この想定に対し、今回の障害にて下記の条件が揃ってしまったことで、トリガー処理では本来発生し得ない長期間の処理失敗が発生してしまっておりました。

    • データベースサーバー自体は障害状態ではなく、処理可能であったこと
    • イベント処理を行うサーバーはデータベースサーバーと正常に接続できており、イベント発行は(遅延は発生していたものの)成功する状態にあったこと
    • トリガー処理を行うサーバーはデータベースサーバーと接続できておらず、トリガー処理が失敗する状態にあったこと

    今後の対策について

    上記の事象につながった根本原因としては「一部のサーバーがデータベースサーバーとの再接続に失敗した」ことにあり、別途行っていた調査にてこれはデータベース接続に使用しているライブラリの不具合によるものの可能性が高いと判明しております。

    こちらについてプログラムの修正自体は完了しており、これにより事象が改善することの検証と、改善することが確認された場合の本番環境適用を明日中目処に行わせていただきます。
    万が一改善が見込めない場合には別の対策を立てていく必要がございますが、その場合は改めてご報告させていただきます。

    また、今回発生した事象の見逃しについて、平常時の監視および障害発生時の正常性検証の観点・手順について、速やかに改善するようにいたします。

     

    大変長くなりましたが、以上ご報告とさせていただきます。
    重ね重ね、今回の障害および不正確な報告を行なってしまったことに関し、お詫び申し上げます。

    0
    コメントアクション パーマリンク
  • Kompiraサポートチーム

    お世話になっております。

    昨日報告させていただいた事象に対する対策について検証により事象改善を確認し、先ほど本番環境のアップデートを行わせていただきました。これにより、昨日発生した継続的な500エラーおよびトリガー処理の立ち消えについて、同じ原因での発生は今後起こることがない見込みです。

    昨日のインシデントに関しては事象の見逃しが発生した点、そもそも特定スペースでの処理負荷が全体に対して影響してしまった点など、サービスのつくり、社内体制などまだ改善すべき点が残っていると認識しております。本修正で満足することなく、引き続きサービス改善を進めてまいります。

    何卒よろしくお願いいたします。

    0
    コメントアクション パーマリンク

サインインしてコメントを残してください。