Logging Session and Environment with airbrake-python
My Pull Request for airbrake-python to support logging session and environment details in Airbrake was merged recently. This has made it possible to easily log session and environment details using Python’s logging facility.
Installation
Let’s use pip
to install the latest version of airbrake-python
:
pip install -e git+git@github.com:airbrake/airbrake-python.git#egg=airbrake-python
Configuration
Next we set some environment variables:
AIRBRAKE_API_KEY
the project API key located in the project settingsAIRBRAKE_PROJECT_ID
the project ID located in the URLproject_id
parameter
Simple Logging
It’s very easy to up and running with airbrake-python
. The following program will log a simple error message:
import airbrake
logger = airbrake.getLogger('logthethings')
logger.exception("This is an error")
This program logs an error in Airbrake and displayed as follows:
Logging Session Details
To include session details, we need to include a session
value in the extra
parameter:
session = {'user': 'brembo', 'email': 'brembo@example.com'}
extra = {'session': session}
logger.exception(
"This is an error with session details", extra=extra)
Airbrake displays an additional Session tab for this error:
Logging Environment Details
Including environment details follows the same pattern:
logger = airbrake.getLogger('logthethings')
extra = {'environment': dict(os.environ)}
logger.exception(
"This is an error with environment details", extra=extra)
Airbrake now displays the Environment tab for this error:
That’s all folks!
And that’s all there is to it. Happy logging!
Thanks to Sam Stavinoha for dealing with my PRs in double-quick time.