ロード・バランサのカスタム・ヘルス・チェック・ページの作成

ロード・バランサのカスタム・ヘルス・チェック・ページを作成します。

多くのシナリオで、独自のカスタム・ヘルス・チェック・ページを公開して、より詳細なチェックを実行できます。シナリオ例の1つとして、既存のアプリケーションに依存するのではなく、次の例のようにflaskアプリケーションを使用します。https://pypi.org/project/py-healthcheck/

import tornado.web
from healthcheck import TornadoHandler, HealthCheck, EnvironmentDump
# add your own check function to the healthcheck
def redis_available():
client = _redis_client()
info = client.info()
return True, "Redis Test Pass"
health = HealthCheck(checkers=[redis_available])
app = tornado.web.Application([
("/healthcheck", TornadoHandler, dict(checker=health)),
])
前述の例で、テスト・ページは、HTTPアプリケーションによるリスニングの確認以上のことを実行します。この例では、redisクライアントをチェックし、レスポンスを待機して、アプリケーション全体が正常であることを確認してから200ステータス・コードを返します。その他のコマンド例では、ディスク領域またはアップストリーム依存関係の可用性をチェックします。ヘルス・チェック構成では、次を指定します:
  • /healthcheck (パスとして)

  • flask default 5000 (ポートとして)

  • 200 (ステータス・コードとして)