Skip to main content

Alerta unified command-line tool and SDK

Project description

Alerta Command-Line Tool

[![Build Status](]( [![Gitter chat](](

Unified command-line tool, terminal GUI and python SDK for the Alerta monitoring system.

![screen shot](/docs/images/alerta-top-80x25.png?raw=true&v=1)

Related projects can be found on the Alerta Org Repo at <>.


Python 2.7 support is EOL

Starting with Release 6.0 only Python 3.5+ is supported. Release 5.2 was the
last to support Python 2.7 and feature enhancements for this release ended on
August 31, 2018. Only critical bug fixes will be backported to Release 5.2.


To install the Alerta CLI tool run::

$ pip install alerta


Options can be set in a configuration file, as environment variables or on the command line.
Profiles can be used to easily switch between different configuration settings.

| Option | Config File | Environment Variable | Optional Argument | Default |
| file | n/a | ``ALERTA_CONF_FILE`` | n/a | ``~/.alerta.conf`` |
| profile | profile | ``ALERTA_DEFAULT_PROFILE`` | ``--profile PROFILE`` | None |
| endpoint | endpoint | ``ALERTA_ENDPOINT`` | ``--endpoint-url URL`` | ``http://localhost:8080`` |
| key | key | ``ALERTA_API_KEY`` | n/a | None |
| timezone | timezone | n/a | n/a | Europe/London |
| SSL verify | sslverify | ``REQUESTS_CA_BUNDLE`` | n/a | verify SSL certificates |
| timeout | timeout | n/a | n/a | 5s TCP connection timeout |
| output | output | n/a | ``--output-format OUTPUT`` | simple |
| color | color | ``CLICOLOR`` | ``--color``, ``--no-color`` | color on |
| debug | debug | ``DEBUG`` | ``--debug`` | no debug |


Configuration file ``~/.alerta.conf``::

timezone = Australia/Sydney
# output = psql
profile = production

[profile production]
endpoint =
key = demo-key

[profile development]
endpoint = https://localhost:8443
sslverify = off
timeout = 10.0
debug = yes

Environment Variables

Set environment variables to use production configuration settings by default::

$ export ALERTA_CONF_FILE=~/.alerta.conf
$ export ALERTA_DEFAULT_PROFILE=production

$ alerta query

And to switch to development configuration settings when required use the ``--profile`` option::

$ alerta --profile development query


$ alerta
Usage: alerta [OPTIONS] COMMAND [ARGS]...

Alerta client unified command-line tool.

--config-file <FILE> Configuration file.
--profile <PROFILE> Configuration profile.
--endpoint-url <URL> API endpoint URL.
--output-format <FORMAT> Output format. eg. simple, grid, psql, presto, rst
--color / --no-color Color-coded output based on severity.
--debug Debug mode.
--help Show this message and exit.

ack Acknowledge alerts
blackout Suppress alerts
blackouts List alert suppressions
close Close alerts
customer Add customer lookup
customers List customer lookups
delete Delete alerts
heartbeat Send a heartbeat
heartbeats List heartbeats
help Show this help
history Show alert history
key Create API key
keys List API keys
login Login with user credentials
logout Clear login credentials
perm Add role-permission lookup
perms List role-permission lookups
query Search for alerts
raw Show alert raw data
revoke Revoke API key
send Send an alert
status Display status and metrics
tag Tag alerts
token Display current auth token
unack Un-acknowledge alerts
untag Untag alerts
update Update alert attributes
uptime Display server uptime
user Update user
users List users
version Display version info
whoami Display current logged in user

Python SDK

The alerta client python package can also be used as a Python SDK.


>>> from alertaclient.api import Client

>>> client = Client(key='NGLxwf3f4-8LlYN4qLjVEagUPsysn0kb9fAkAs1l')
>>> client.send_alert(environment='Production', service=['Web', 'Application'], resource='web01', event='HttpServerError', value='501', text='Web server unavailable.')
Alert(id='42254ef8-7258-4300-aaec-a9ad7d3a84ff', environment='Production', resource='web01', event='HttpServerError', severity='normal', status='closed', customer=None)

>>> [ for a in[('resource','~we.*01'), ('environment!', 'Development')])]

>>> client.heartbeat().serialize()['status']


Copyright (c) 2014-2017 Nick Satterly. Available under the MIT License.

Project details

Release history Release notifications

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
alerta-6.0.0-py2.py3-none-any.whl (51.7 kB) Copy SHA256 hash SHA256 Wheel 3.7 Sep 19, 2018
alerta-6.0.0.tar.gz (27.5 kB) Copy SHA256 hash SHA256 Source None Sep 19, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page