Skip to main content

Lightweight Application Performance Monitoring middleware that measures and reports performance data to HowFast APM.

Project description

Light instrumentation of your Python server for reporting performance data to HowFast APM.

Screenshot from HowFast APM

Install

To install / update the module:

pip install howfast-apm[flask]

Usage

Only the Flask middleware is currently available.

from howfast_apm import HowFastFlaskMiddleware

# Create your Flask app
app = Flask(__name__, ...)

# Instanciate all your other middlewares first

# Setup the APM middleware last, so that it can track the time spent inside other middlewares
HowFastFlaskMiddleware(app, app_id=HOWFAST_APM_DSN)

Configuration

You can configure the APM through environment variables. If they are defined, those variables will be used. Parameters passed to the HowFastFlaskMiddleware constructor take precedence over environment variables.

Only one variable is available for now:

  • HOWFAST_APM_DSN: The DSN (application identifier) that you can find on your APM dashboard. Can also be passed to the constructor as app_id.

If the environment variable is defined you can then use:

# Install the middleware
HowFastFlaskMiddleware(app)

You can also choose to exclude some URLs from reporting:

# Do not report performance data for some URLs
HowFastFlaskMiddleware(
    app,
    endpoints_blacklist=[
        '/some/internal/url/',
        # You can also use patterns accepted by Python's `fnmatch.fnmatch`, shell-like:
        '/admin/*',
        '/jobs/*/results',
        '/endpoint/?',  # will blacklist /endpoint and /endpoint/
    ],
)

Project details


Download files

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

Source Distribution

howfast_apm-0.8.0.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

howfast_apm-0.8.0-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file howfast_apm-0.8.0.tar.gz.

File metadata

  • Download URL: howfast_apm-0.8.0.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.7 Darwin/23.5.0

File hashes

Hashes for howfast_apm-0.8.0.tar.gz
Algorithm Hash digest
SHA256 d517d45b6187ebf4c6ec573ab6f703796173a5af5f354baabce9a1440b8f313c
MD5 055613ef34e0ec03093db932afaa55ee
BLAKE2b-256 7f4acdf83fdcd6a640db9652250288bf21424f9733d9b898d4915ae82703c6f3

See more details on using hashes here.

File details

Details for the file howfast_apm-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: howfast_apm-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.7 Darwin/23.5.0

File hashes

Hashes for howfast_apm-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8039756c56548e3806bdfbf3176000a15392ada457ef740f8fffaa7a03803239
MD5 54fe8237729c497eec9544e9e8b8a370
BLAKE2b-256 e8723c17bd1400138eeb941d0415721e67acc79d82331fdb34df80b8b4af9a72

See more details on using hashes here.

Supported by

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