Skip to main content

Falcon to Telegraf middlewares

Project description




Build Status

What is this?

Package to ease gathering metrics from Falcon APIs into InfluxDB via a Telegraf. By use of middlewares this orthogonal functionality is added in a hassle-free way minimizing required work. Sane defaults make quickstart really quick 👍


Inject the middleware (or couple of them) when creating Api instance:

from falcon_telegraf import LogHits, Timer

telegraf_client = TelegrafClient('localhost', 8094)
app = falcon.API(

Note that passing telegraf_client is totally optional. Measurement names can be set when creating middleware, prefixed or autogenerated.



Creates a metric named hits-path/to/endpoint with one fields called hits with value 1. Executes after on-* method was called. Because of this you can add custom tags and values. Example:

def on_get(self, request, response, some_path_variable):
    request.context['telegraf_tags']['my_new_tag'] = 'this_tags_value'
    request.context['telegraf_values']['some_path_variable'] = some_path_variable


Reports time in ms elapsed between registering response and registering request. Default metric prefix is time-. Other things in processing pipeline can affect it's readings so take them with a grain of salt.


First bump version in in master branch via merge request. Afterwards push a version tag and wait.

git tag `date +"%Y.%-m.%-d.1"`
git push --tags

Project details

Download files

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

Files for falcon-telegraf-middleware, version 2019.8.5.1
Filename, size File type Python version Upload date Hashes
Filename, size falcon-telegraf-middleware-2019.8.5.1.tar.gz (6.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page