Alerta Command-Line Tool
========================
[![Actions Status](https://github.com/alerta/python-alerta-client/workflows/CI%20Tests/badge.svg)](https://github.com/alerta/python-alerta-client/actions)
[![Slack chat](https://img.shields.io/badge/chat-on%20slack-blue?logo=slack)](https://slack.alerta.dev) [![Coverage Status](https://coveralls.io/repos/github/alerta/python-alerta-client/badge.svg?branch=master)](https://coveralls.io/github/alerta/python-alerta-client?branch=master)
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 <https://github.com/alerta/>.
Installation
------------
To install the Alerta CLI tool run::
$ pip install alerta
Configuration
-------------
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 |
| SSL client cert | sslcert | n/a | n/a | None |
| SSL client key | sslkey | n/a | n/a | None |
| 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 |
Example
-------
Configuration file ``~/.alerta.conf``::
[DEFAULT]
timezone = Australia/Sydney
# output = psql
profile = production
[profile production]
endpoint = https://api.alerta.io
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
Usage
-----
$ alerta
Usage: alerta [OPTIONS] COMMAND [ARGS]...
Alerta client unified command-line tool.
Options:
--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.
Commands:
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.
Example
-------
>>> 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)
>>> [a.id for a in client.search([('resource','~we.*01'), ('environment!', 'Development')])]
['42254ef8-7258-4300-aaec-a9ad7d3a84ff']
>>> client.heartbeat().serialize()['status']
'ok'
License
-------
Alerta monitoring system and console
Copyright 2012-2024 Nick Satterly
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Raw data
{
"_id": null,
"home_page": "https://github.com/guardian/python-alerta",
"name": "alerta",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "alerta client unified command line tool sdk",
"author": "Nick Satterly",
"author_email": "nfsatterly@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/8b/7c/9e68da39e85c7ecf0d355f72f4d33a49cf018fc859dab168af1f4e4f9ac1/alerta-8.5.3.tar.gz",
"platform": null,
"description": "Alerta Command-Line Tool\n========================\n\n[![Actions Status](https://github.com/alerta/python-alerta-client/workflows/CI%20Tests/badge.svg)](https://github.com/alerta/python-alerta-client/actions)\n [![Slack chat](https://img.shields.io/badge/chat-on%20slack-blue?logo=slack)](https://slack.alerta.dev) [![Coverage Status](https://coveralls.io/repos/github/alerta/python-alerta-client/badge.svg?branch=master)](https://coveralls.io/github/alerta/python-alerta-client?branch=master)\n\nUnified command-line tool, terminal GUI and python SDK for the Alerta monitoring system.\n\n![screen shot](/docs/images/alerta-top-80x25.png?raw=true&v=1)\n\nRelated projects can be found on the Alerta Org Repo at <https://github.com/alerta/>.\n\nInstallation\n------------\n\nTo install the Alerta CLI tool run::\n\n $ pip install alerta\n\nConfiguration\n-------------\n\nOptions can be set in a configuration file, as environment variables or on the command line.\nProfiles can be used to easily switch between different configuration settings.\n\n| Option | Config File | Environment Variable | Optional Argument | Default |\n|-------------------|-------------|----------------------------|---------------------------------|---------------------------|\n| file | n/a | ``ALERTA_CONF_FILE`` | n/a | ``~/.alerta.conf`` |\n| profile | profile | ``ALERTA_DEFAULT_PROFILE`` | ``--profile PROFILE`` | None |\n| endpoint | endpoint | ``ALERTA_ENDPOINT`` | ``--endpoint-url URL`` | ``http://localhost:8080`` |\n| key | key | ``ALERTA_API_KEY`` | n/a | None |\n| timezone | timezone | n/a | n/a | Europe/London |\n| SSL verify | sslverify | ``REQUESTS_CA_BUNDLE`` | n/a | verify SSL certificates |\n| SSL client cert | sslcert | n/a | n/a | None |\n| SSL client key | sslkey | n/a | n/a | None |\n| timeout | timeout | n/a | n/a | 5s TCP connection timeout |\n| output | output | n/a | ``--output-format OUTPUT`` | simple |\n| color | color | ``CLICOLOR`` | ``--color``, ``--no-color`` | color on |\n| debug | debug | ``DEBUG`` | ``--debug`` | no debug |\n\nExample\n-------\n\nConfiguration file ``~/.alerta.conf``::\n\n [DEFAULT]\n timezone = Australia/Sydney\n # output = psql\n profile = production\n\n [profile production]\n endpoint = https://api.alerta.io\n key = demo-key\n\n [profile development]\n endpoint = https://localhost:8443\n sslverify = off\n timeout = 10.0\n debug = yes\n\nEnvironment Variables\n---------------------\n\nSet environment variables to use production configuration settings by default::\n\n $ export ALERTA_CONF_FILE=~/.alerta.conf\n $ export ALERTA_DEFAULT_PROFILE=production\n\n $ alerta query\n\nAnd to switch to development configuration settings when required use the ``--profile`` option::\n\n $ alerta --profile development query\n\nUsage\n-----\n\n $ alerta\n Usage: alerta [OPTIONS] COMMAND [ARGS]...\n\n Alerta client unified command-line tool.\n\n Options:\n --config-file <FILE> Configuration file.\n --profile <PROFILE> Configuration profile.\n --endpoint-url <URL> API endpoint URL.\n --output-format <FORMAT> Output format. eg. simple, grid, psql, presto, rst\n --color / --no-color Color-coded output based on severity.\n --debug Debug mode.\n --help Show this message and exit.\n\n Commands:\n ack Acknowledge alerts\n blackout Suppress alerts\n blackouts List alert suppressions\n close Close alerts\n customer Add customer lookup\n customers List customer lookups\n delete Delete alerts\n heartbeat Send a heartbeat\n heartbeats List heartbeats\n help Show this help\n history Show alert history\n key Create API key\n keys List API keys\n login Login with user credentials\n logout Clear login credentials\n perm Add role-permission lookup\n perms List role-permission lookups\n query Search for alerts\n raw Show alert raw data\n revoke Revoke API key\n send Send an alert\n status Display status and metrics\n tag Tag alerts\n token Display current auth token\n unack Un-acknowledge alerts\n untag Untag alerts\n update Update alert attributes\n uptime Display server uptime\n user Update user\n users List users\n version Display version info\n whoami Display current logged in user\n\nPython SDK\n==========\n\nThe alerta client python package can also be used as a Python SDK.\n\nExample\n-------\n\n >>> from alertaclient.api import Client\n\n >>> client = Client(key='NGLxwf3f4-8LlYN4qLjVEagUPsysn0kb9fAkAs1l')\n >>> client.send_alert(environment='Production', service=['Web', 'Application'], resource='web01', event='HttpServerError', value='501', text='Web server unavailable.')\n Alert(id='42254ef8-7258-4300-aaec-a9ad7d3a84ff', environment='Production', resource='web01', event='HttpServerError', severity='normal', status='closed', customer=None)\n\n >>> [a.id for a in client.search([('resource','~we.*01'), ('environment!', 'Development')])]\n ['42254ef8-7258-4300-aaec-a9ad7d3a84ff']\n\n >>> client.heartbeat().serialize()['status']\n 'ok'\n\nLicense\n-------\n\n Alerta monitoring system and console\n Copyright 2012-2024 Nick Satterly\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "Alerta unified command-line tool and SDK",
"version": "8.5.3",
"project_urls": {
"Homepage": "https://github.com/guardian/python-alerta"
},
"split_keywords": [
"alerta",
"client",
"unified",
"command",
"line",
"tool",
"sdk"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "afdc05cbacda0466ec1415ed13c0e2780908870ab2d51aae16b7f41a5fa40ab4",
"md5": "1f9ac56299ad1d36a9c39ca7b690aa62",
"sha256": "fca2f2cd3f6d8cf68160767ef9f3b56222c7aced44658de365cde7e808fddddc"
},
"downloads": -1,
"filename": "alerta-8.5.3-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "1f9ac56299ad1d36a9c39ca7b690aa62",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.8",
"size": 70108,
"upload_time": "2024-04-11T21:37:32",
"upload_time_iso_8601": "2024-04-11T21:37:32.196394Z",
"url": "https://files.pythonhosted.org/packages/af/dc/05cbacda0466ec1415ed13c0e2780908870ab2d51aae16b7f41a5fa40ab4/alerta-8.5.3-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8b7c9e68da39e85c7ecf0d355f72f4d33a49cf018fc859dab168af1f4e4f9ac1",
"md5": "e5c9f4354b1e7a0f8fa3c56224440be9",
"sha256": "78fbd3da272c82ffa2a396830d4af56617e8766e3096a87f8aa5ed3641614b5d"
},
"downloads": -1,
"filename": "alerta-8.5.3.tar.gz",
"has_sig": false,
"md5_digest": "e5c9f4354b1e7a0f8fa3c56224440be9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 48075,
"upload_time": "2024-04-11T21:37:34",
"upload_time_iso_8601": "2024-04-11T21:37:34.683888Z",
"url": "https://files.pythonhosted.org/packages/8b/7c/9e68da39e85c7ecf0d355f72f4d33a49cf018fc859dab168af1f4e4f9ac1/alerta-8.5.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-11 21:37:34",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "guardian",
"github_project": "python-alerta",
"github_not_found": true,
"lcname": "alerta"
}