Skip to content

Python event reference

View Markdown
Every event the Honeybadger Python package sends to Insights when instrumentation is enabled: Django, Flask, and ASGI requests, database queries, and Celery tasks. Each entry lists the event's fields with their types, and links to its raw JSON Schema.
5 events emitted by honeybadger-python.

asgi.request

An ASGI app finished handling an HTTP request. Used by FastAPI, Starlette, and similar frameworks.

FieldTypeDescription
event_typestringAllowed value: asgi.request.
pathstringRequest path from the ASGI scope.
methodstringHTTP method, e.g. "GET", "POST".
statusintegerHTTP response status code.
durationnumberRequest duration in milliseconds.
paramsobjectParsed query string params. Only present when include_params is enabled in insights_config.
params.*anyAdditional caller-defined keys.
request_idstringRequest ID from event context, if set.
Example
{
"event_type": "asgi.request",
"path": "/users/123",
"method": "GET",
"status": 200,
"duration": 23.4567,
"params": {
"page": "2",
"sort": "name"
},
"request_id": "1f9f6f1a-2b3c-4d5e-8f6a-7b8c9d0e1f2a"
}

celery.task_finished

A Celery task finished, whether it succeeded or failed.

FieldTypeDescription
event_typestringAllowed value: celery.task_finished.
task_idstringCelery task UUID.
task_namestringFully qualified task name, e.g. "myapp.tasks.send_email".
statestringFinal task state, e.g. "SUCCESS", "FAILURE", "RETRY".
retriesintegerNumber of retries so far.
groupstringCelery group ID if the task is part of a group.
durationnumberTask execution duration in milliseconds.
argsarray<any>Positional task arguments. Only present when include_args is enabled in insights_config.
kwargsobjectKeyword task arguments (filtered). Only present when include_args is enabled in insights_config.
kwargs.*anyAdditional caller-defined keys.
request_idstringRequest ID propagated from the originating request via Celery task headers.
Example
{
"event_type": "celery.task_finished",
"task_id": "9c5e8a2f-1b3d-4c6e-9f7a-2d4b6c8e0a1f",
"task_name": "myapp.tasks.send_email",
"state": "SUCCESS",
"retries": 0,
"group": "5a7d3e9b-8c1f-4b2a-9d6e-3f5a7c9e1b4d",
"duration": 845.2103,
"args": [
"user@example.com"
],
"kwargs": {
"subject": "Welcome to MyApp"
},
"request_id": "1f9f6f1a-2b3c-4d5e-8f6a-7b8c9d0e1f2a"
}

db.query

A database query from the Django ORM or SQLAlchemy. Honeybadger skips queries that match exclude_queries.

FieldTypeDescription
event_typestringAllowed value: db.query.
querystringSQL query string. Bind parameters may appear as literals, depending on the driver.
durationnumberQuery execution duration in milliseconds.
paramsanyQuery parameters. Only present when include_params is enabled in insights_config.
request_idstringRequest ID from event context, ties this query to the enclosing request.
Example
{
"event_type": "db.query",
"query": "SELECT \"users\".* FROM \"users\" WHERE \"users\".\"id\" = %s LIMIT 1",
"duration": 2.4815,
"params": [
123
],
"request_id": "1f9f6f1a-2b3c-4d5e-8f6a-7b8c9d0e1f2a"
}

django.request

A Django view finished handling an HTTP request.

FieldTypeDescription
event_typestringAllowed value: django.request.
pathstringRequest path, e.g. "/users/42".
methodstringHTTP method, e.g. "GET", "POST".
statusintegerHTTP response status code.
viewstringResolved view function name.
modulestringModule containing the view function.
appstringDjango app name from the URL resolver.
durationnumberRequest duration in milliseconds.
paramsobjectGET and POST params. Only present when include_params is enabled in insights_config.
params.*anyAdditional caller-defined keys.
request_idstringRequest ID from X-Request-ID header, request.id/request_id attribute, or a generated UUID. Set in event context at request start.
Example
{
"event_type": "django.request",
"path": "/users/123",
"method": "GET",
"status": 200,
"view": "user_detail",
"module": "myapp.views",
"app": "users",
"duration": 58.3214,
"params": {
"page": "2",
"sort": "name"
},
"request_id": "1f9f6f1a-2b3c-4d5e-8f6a-7b8c9d0e1f2a"
}

flask.request

A Flask route finished handling an HTTP request.

FieldTypeDescription
event_typestringAllowed value: flask.request.
pathstringRequest path, e.g. "/users/42".
methodstringHTTP method, e.g. "GET", "POST".
statusintegerHTTP response status code.
viewstringFlask endpoint name (request.endpoint).
blueprintstringFlask blueprint name, if the route belongs to one.
durationnumberRequest duration in milliseconds.
paramsobjectQuery and form params. Only present when include_params is enabled in insights_config.
params.*anyAdditional caller-defined keys.
request_idstringRequest ID from X-Request-ID header or a generated UUID. Set in event context at request start.
Example
{
"event_type": "flask.request",
"path": "/users/123",
"method": "GET",
"status": 200,
"view": "users.show",
"blueprint": "users",
"duration": 32.1875,
"params": {
"page": "2",
"sort": "name"
},
"request_id": "1f9f6f1a-2b3c-4d5e-8f6a-7b8c9d0e1f2a"
}