Skip to main content

Send syslog messages to Sentry as events

Project description

https://github.com/rpatterson/sentry-syslog/workflows/Run%20linter,%20tests%20and,%20and%20release/badge.svg

The sentry-syslog command-line script sends RFC 5424 IETF Syslog Protocol message to Sentry as events as follows:

  1. Initializes Sentry’s Python logging integration

  2. Accepts one message per-line

  3. Converts each message into a Python logging message

  4. Logs the Python message to be handled by the Sentry’s Python logging integration

Installation

Install using any tool for installing standard Python 3 distributions such as pip:

$ sudo pip3 install sentry-syslog

Usage

See the command-line help for details on options and arguments:

$ sentry-syslog --help
usage: sentry-syslog [-h] [--input-file INPUT_FILE]
                     [--event-level EVENT_LEVEL]
                     sentry_dsn

Send syslog messages to Sentry as events.

positional arguments:
  sentry_dsn            The DSN for your sentry DSN or client key.

optional arguments:
  -h, --help            show this help message and exit
  --input-file INPUT_FILE, -i INPUT_FILE
                        Take the syslog messages from this file, one per-line.
                        (default: stdin)
  --event-level EVENT_LEVEL, -e EVENT_LEVEL
                        Capture log messages of this level and above as Sentry
                        events. All other events are captured as Sentry
                        breadcrumbs. (default: ERROR)

The script expects all the syslog lines it receives to be already filtered down to those that should be captured in Sentry. The level setting only determines which lines are captured as breadcrumbs or events.

The correct invocation can then be used, for example, with Rsyslog’s omprog output module as the binary to selectively forward a system’s syslog messages to Sentry as events. See the example omprog configuration which might be installed as follows (will require adapting to the system):

$ sudo curl https://raw.githubusercontent.com/rpatterson/sentry-syslog/master/src/sentry_syslog/etc/rsyslog.d/99-sentry.conf >/etc/rsyslog.d/99-sentry.conf
$ sudo editor /etc/rsyslog.d/99-sentry.conf
$ sudo systemctl restart rsyslog.service

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

sentry-syslog-0.1.5.tar.gz (10.0 kB view hashes)

Uploaded Source

Built Distribution

sentry_syslog-0.1.5-py3-none-any.whl (9.6 kB view hashes)

Uploaded Python 3

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