Skip to main content

Cron-Sentry is a command-line wrapper that reports unsuccessful runs to Sentry (https://www.getsentry.com)

Project description

Cron-Sentry is a python command-line wrapper that reports errors to Sentry (using raven) if the called script exits with a status other than zero.

Install

pip install cron-sentry

Usage

$ cron-sentry --help
usage: cron-sentry [-h] [--dsn SENTRY_DSN] [-M STRING_MAX_LENGTH] [--quiet] [--report-all] [--version] cmd [arg ...]

Wraps commands and reports those that fail to Sentry.

positional arguments:
  cmd                   The command to run

optional arguments:
  -h, --help            show this help message and exit
  --dsn SENTRY_DSN      Sentry server address
  -M STRING_MAX_LENGTH, --string-max-length STRING_MAX_LENGTH, --max-message-length STRING_MAX_LENGTH
                        The maximum characters of a string that should be sent
                        to Sentry (defaults to 4096)
  -q, --quiet           Suppress all command output
  --version             show program's version number and exit
  --report-all          Report to Sentry even if the task has succeeded

The Sentry server address can also be specified through the SENTRY_DSN
environment variable (and the --dsn option can be omitted).

It’s possible to send extra information to Sentry via environment variables (prefix them with CRON_SENTRY_EXTRA_), such as:

$ export CRON_SENTRY_EXTRA_env=production
$ cron-sentry my-program

Example

$ crontab -e

SENTRY_DSN=https://<your_key>:<your_secret>@app.getsentry.com/<your_project_id>
0 4 * * * cron-sentry my-process --arg arg2

Notes

  • If your command outputs Unicode, you may need to signal to python that stdin/stdout/stderr are UTF-8 encoded:

PYTHONIOENCODING=utf-8
SENTRY_DSN=https://<your_key>:<your_secret>@app.getsentry.com/<your_project_id>
0 4 * * * cron-sentry my-process --arg arg2

License

This project started life as raven-cron by MediaCore Technologies.

Original copyright 2013 to MediaCore Technologies (MIT license). Copyright 2015 to Yipit Inc. (MIT license).

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

cron-sentry-0.8.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

cron_sentry-0.8.0-py2.py3-none-any.whl (7.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file cron-sentry-0.8.0.tar.gz.

File metadata

File hashes

Hashes for cron-sentry-0.8.0.tar.gz
Algorithm Hash digest
SHA256 866e6b1304f50bd68d5b8e2745ce53d3fb42444f85d582bbbb0133aab0f7fd7f
MD5 de634501dc03873c8263815b211aa56c
BLAKE2b-256 e4cd45fa525c1b381cc4107fbdc7ff0f0795d0a6436f2cc256cc9b8eab470a53

See more details on using hashes here.

File details

Details for the file cron_sentry-0.8.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for cron_sentry-0.8.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 85683444d395dee03578688c375174a36a99e52e6427b875cd0f3a53060539f9
MD5 aa545e4ded122a78ba2d7e5329359fd8
BLAKE2b-256 a3f79a047f970ece372b3cee0909fabb00f5f77aeeb4b9a3be00ab7f56e9c8b5

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