Skip to main content

Healthchecks for Any Framework (FastAPI/Flask)

PyPI GitHub Actions Documentation Status Codecov PyPI - Downloads

Healthy-API is designed to work with both Flask and FastAPI. Healthy-API is really simple to set up. Healthy-API will provide an enpoint at /_health where you will get a JSON response of the system’s uptime, current git revision, version, and function you want.

You can also add in extra checks by passing in a list of checks to the constructor.

Installing

Install and update using pip:

pip install -U "healthy-api[flask]"

or

pip install -U "healthy-api[fastapi]"

FastAPI Configuration

from fastapi import FastAPI
from healthy_api.adapters.fastapi import FlaskAdapter as HealthyApi

app = FastAPI(__name__)

def db_check():
  """Database"""
  try:
      with get_session_ctx() as session:
          (res,) = session.execute(text("SELECT 1")).fetchone()
          return bool(res == 1)
  except Exception as e:
      logger.error(f"Unable to connect to database: {e}")
      return False

HealthyApi(app, extra_checks=[db_check])

Flask Configuration

from Flask import Flask
from healthy_api.adapters.flask import Flask as HealthyApi

app = Flask(__name__)

HealthyApi(app)

Or if you can use the init_app function:

from Flask import Flask
from healthy_api.adapters.flask import Flask as HealthyApi

app = Flask(__name__)

healthy_api = HealthyApi()
healthy_api.init_app(app)

Features

  • Current Git Commit

  • Current Version

  • Accepts custom functions

Configuration

Config Key

Description

Type

Default

HAPI_ENABLE

Enable/Disable Healthy-API

bool

True

HAPI_ENABLE_GIT

Enable/Disable Git Stats

bool

True

HAPI_ENABLE_VERSION

Enable/Disable Version Stats

bool

True

HAPI_ENDPOINT

Custom Route

str

/_health

Sponsorship

Put your logo here! Become a sponsor and support this project!

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

healthy_api-0.11.1.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

healthy_api-0.11.1-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file healthy_api-0.11.1.tar.gz.

File metadata

  • Download URL: healthy_api-0.11.1.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.8

File hashes

Hashes for healthy_api-0.11.1.tar.gz
Algorithm Hash digest
SHA256 f54c55276f74a5583082586e2201afbc791aede891d5f095592d894ed07b6235
MD5 2327d10f32c9696a5ba1d951490b9f9e
BLAKE2b-256 f28c485d70a5ee305633ecdd5e2b3a6d5e6545b14f1b7a80da4a7ea9adf53860

See more details on using hashes here.

File details

Details for the file healthy_api-0.11.1-py3-none-any.whl.

File metadata

  • Download URL: healthy_api-0.11.1-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.8

File hashes

Hashes for healthy_api-0.11.1-py3-none-any.whl
Algorithm Hash digest
SHA256 292e82f337f046aa101cde7f06ffdfeeb468bb83959a1fdbd83f51b120f76314
MD5 bd0a7cca94edcbfd075c9f69c16015ac
BLAKE2b-256 81611c82d31e4b61a0741737524aad07b829f298800ef344393900cb59ffbe85

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page