Skip to content

Commit 51b399e

Browse files
authored
Improve heartbeat alert messages (#237)
1 parent e6731a3 commit 51b399e

2 files changed

Lines changed: 16 additions & 9 deletions

File tree

alertaclient/commands/cmd_heartbeat.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
@click.command('heartbeat', short_help='Send a heartbeat')
99
@click.option('--origin', '-O', metavar='ORIGIN', default=origin, help='Origin of heartbeat.')
1010
@click.option('--environment', '-E', metavar='ENVIRONMENT', help='Environment eg. Production, Development')
11-
@click.option('--severity', '-s', metavar='SEVERITY', default='major', help='Severity eg. critical, major, minor, warning')
11+
@click.option('--severity', '-s', metavar='SEVERITY', help='Severity override eg. critical, major, minor, warning')
1212
@click.option('--service', '-S', metavar='SERVICE', multiple=True, help='List of affected services eg. app name, Web, Network, Storage, Database, Security')
1313
@click.option('--group', '-g', metavar='GROUP', help='Group event by type eg. OS, Performance')
1414
@click.option('--tag', '-T', 'tags', multiple=True, metavar='TAG', help='List of tags eg. London, os:linux, AWS/EC2')
@@ -28,14 +28,17 @@ def cli(obj, origin, environment, severity, service, group, tags, timeout, custo
2828
client.delete_heartbeat(delete)
2929
else:
3030
if any(t.startswith('environment') or t.startswith('group') for t in tags):
31-
click.secho('WARNING: Do not use tags for "environment" or "group". See help.', err=True)
31+
click.secho('WARNING: Using tags for "environment" or "group" is deprecated. See help.', err=True)
3232

3333
if severity in ['normal', 'ok', 'cleared']:
34-
raise click.UsageError('Must be a non-normal severity.')
35-
36-
if severity not in obj['alarm_model']['severity'].keys():
37-
raise click.UsageError('Must be a valid severity.')
38-
34+
raise click.UsageError('Must be a non-normal severity. "{}" is one of {}'.format(
35+
severity, ', '.join(['normal', 'ok', 'cleared']))
36+
)
37+
38+
if severity and severity not in obj['alarm_model']['severity'].keys():
39+
raise click.UsageError('Must be a valid severity. "{}" is not one of {}'.format(
40+
severity, ', '.join(obj['alarm_model']['severity'].keys()))
41+
)
3942
attributes = dict()
4043
if environment:
4144
attributes['environment'] = environment

alertaclient/commands/cmd_heartbeats.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,14 @@ def cli(obj, alert, severity, timeout, purge):
2323
default_normal_severity = 'normal'
2424

2525
if severity in ['normal', 'ok', 'cleared']:
26-
raise click.UsageError('Must be a non-normal severity.')
26+
raise click.UsageError('Must be a non-normal severity. "{}" is one of {}'.format(
27+
severity, ', '.join(['normal', 'ok', 'cleared']))
28+
)
2729

2830
if severity not in obj['alarm_model']['severity'].keys():
29-
raise click.UsageError('Must be a valid severity.')
31+
raise click.UsageError('Must be a valid severity. "{}" is not one of {}'.format(
32+
severity, ', '.join(obj['alarm_model']['severity'].keys()))
33+
)
3034

3135
if obj['output'] == 'json':
3236
r = client.http.get('/heartbeats')

0 commit comments

Comments
 (0)