Files
notifications-admin/app/status/views/healthcheck.py

23 lines
776 B
Python

from flask import current_app, jsonify, request
from notifications_python_client.errors import HTTPError
from app import status_api_client, version
from app.status import status
@status.route('/_status', methods=['GET'])
def show_status():
if request.args.get('elb', None) or request.args.get('simple', None):
return jsonify(status="ok"), 200
else:
try:
api_status = status_api_client.get_status()
except HTTPError as e:
current_app.logger.exception("API failed to respond")
return jsonify(status="error", message=str(e.message)), 500
return jsonify(
status="ok",
api=api_status,
git_commit=version.__git_commit__,
build_time=version.__time__), 200