見出し画像

6.2 監視の仕組み/定期的な確認作業

 業務まで踏み込んでWeb構築を請け負い、継続的に業務に使用されているシステムが安定に運用されるお手伝いをしていくためには、システムの状態を継続的にモニタする仕組みが必要となります。一般的に、システム改変を行わず、システムの使用方法も変わらずに同じ人たちが同じように使用している限りは、新たな不具合発生などあまり発生しません。しかし、適時機能追加を行ったり、システム改変を行ったり、ほかのシステムとの連携を行うようになったり、新たなメンバがすこし違う使い方をするような変化があることは珍しくありません。
 そのため、企業業務として急に停止されると困るWebシステムに対しては、安定にシステムが運用されていることを担保するための仕組みを構築することがよく行われます。また、Webとは対一般ユーザ向けのものであれば24時間365日稼働させていたり、社内業務向けのものでも所定のメンテナンス日時以外は常に稼働していて社員が夜間でも休日でも使用できる状態にしておくものは多いので、システムの安定稼働を担保するための仕組みとしては、自動監視の仕組みと人的な定期的な確認作業の両面を行うことも多くみうけられます。

Amazon Cloudwatch Syntheticsを使った自動監視 (URL死活監視)

a. 自動監視の仕組み
24時間365日の監視というと人的に対応するとコスト面でも厳しくなりますので、自動監視の仕組みで対応することが多くなります。Webの自動監視の内容としては以下のような2種類に分類される自動監視の仕組みの両方を実施するということが多いかと思います。
 
[システムの基本機能の外部からのアクセス検証 (URL死活監視)]
 WebはPC/スマホなどのさまざまなクライアントからアクセスされるものですので、当該システム外部から定期的に (1分ごと等) 所定のアクセスを対象Webに対して行い、期待されるレスポンスを返すかどうかの確認を自動的に行い、期待通りのレスポンスがない場合には、あらかじめ登録してあるメールアドレスにアラートのメールなどを自動的に送信するものです。
 定期的に行うアクセスの内容としては、対象システムが担保したい品質レベル・保証したい機能によるわけですが、代表的な確認内容としては、下記のふたつがあります。

x. Webサイトのトップページへのアクセス
y. Webに所定のアカウントでログイン

xの確認を行えば、当該Webがサーバとしては機能していてWebサイトとしても基本的には機能していることが確認できます。また、yまでの確認を行えば、ログイン認証というアプリケーションレベルで基本的には正常に動作していて、DBアクセスまでも問題ないことが一般的には確認できるので、この2種類の自動監視を行うことがよく見られます。
 なお、上記のxはシンプルなアクセス手順なので、さまざまなデータセンタサービスでの自動監視のメニューにも含まれていますが、yの自動監視は2段階のアクセスが必要となり、レスポンスの確認としてもWebページの内容をチェックする必要があるので、データセンタの標準的なサービスでは対応できない場合もあり、そのような場合は自前で定期的に実行されるアプリケーション/シェルスクリプトを実装していずれかのサーバ上で稼働させる必要がでてくる可能性もありえます。
 
[サーバの内部状態のモニタ]
 前述の自動監視は、対象とするWebシステムの動作が実際におかしくなった場合にいち早く検出する手段ですが、サーバのCPU使用率やメモリ使用率、ディスクの使用率などの内部状態をモニタして、一定水準 (80%等)を超えた場合には、アラートのメールを送るような自動監視もよくみられる自動監視です。このような自動監視は、システムの内部状態をモニタすることにより、Webのレスポンスが実際におかしくなる前に危険レベルになったことを知らせてくれる面があるので、前述のアクセス検証とともに自動監視のメニューとして併用することはよく行われます。なお、サーバの内部状態をモニタする自動監視はデータセンタサービスであれば普通に用意されているサービスです。
 
b. 人的な定期的な確認作業
 前述のような自動監視の仕組みに加えて、日次あるいは週次/月次などでの定期的な人手による監視・確認作業なども行うことがよくあります。
 人的な確認作業のひとつのパターンは、重要度がそれほど高くない機能のため、自動監視の設定やアプリケーションとしてのエラー処理まで実装されていない機能について、人的に1日に一回、サーバログやDBの内容を確認して報告するという対応を行うものです。
 また、Webというのはブラウザにてアクセスして利用するものですので、ブラウザのバージョンが上がると期待する動作を行わなくなる場合があります。Webが正常に動作しないと影響が大きいシステムの場合には、ChromeやEdgeなどのサポート対象ブラウザのバージョンが上がるごとに、人的に基本的な動作を確認するようなことを行うこともあります。


Webディレクタとして次のステップをさがしている方たちへ

これからのWeb構築・Webディレクションとして、業務にまで踏み込んでディレクション/プロデュースすること、それが近年のバズワードであるDXにもつながること、そしてWebの進化とともにWeb構築の各種ツール/サービスやSaaSが広がってきていることにしたがって、業務とシステムの両面からWeb構築・運用していく人間が求められていくこと、そのためにどのような知識や能力を身に着けていくとよいかについて解説している「マガジン」です。