Allows Hubot to interact with Bosun.
See src/bosun.coffee
for full documentation.
In the hubot project repo, run:
npm install hubot-bosun --save
Then add hubot-bosun to your external-scripts.json
:
[
"hubot-bosun"
]
hubot-bosun may be used with hubot-auth and can be configured via the following environment variables:
HUBOT_BOSUN_HOST
-- Bosun server URL, e.g.,http://localhost:8070
HUBOT_BOSUN_LINK_URL
-- If set, this URL will be used for links instead ofHUBOT_BOSUN_HOST
HUBOT_BOSUN_ROLE
-- If set, auth role required to interact with Bosun. Default isbosun
HUBOT_BOSUN_SLACK
-- Ifyes
enables rich text formatting for Slack, default isno
HUBOT_BOSUN_LOG_LEVEL
-- Log level, default isinfo
HUBOT_BOSUN_TIMEOUT
-- Timeout for Bosun API calls in milliseconds; default is10000
HUBOT_BOSUN_RELATIVE_TIME
-- Ifyes
all dates and times are presented relative to now, e.g. 2 min ago
show open bosun incidents
shows all open incidents, unacked and acked, sorted by incident id<ack|close> bosun incident[s] <Id,...> because <message>
acks or closes bosun incidents with the specified incident ids
show bosun silences
shows all active silences<set|test> bosun silence for <alert|tagkey>=value[,...] for <duration> because <message>
sets or tests a new silence, e.g.,set bosun silence for alert=test.lukas,host=muffin for 1h because I want to
. Can also be used with alert or tags only.clear bosun silence <id>
deletes silence with the specific silence id
Please see the event handlers in src/bosun.coffee
for the specific event formats.
bosun.set_silence
bosun.clear_silence
bosun.check_silence
bosun.result.set_silence.successful
bosun.result.set_silence.failed
bosun.result.clear_silence.successful
bosun.result.clear_silence.failed
bosun.result.check_silence.successful
bosun.result.check_silence.failed
Lukas Pustina> list open bosun incidents
hubot> @lukas.pustina: Retrieving Bosun incidents ...
hubot> @lukas.pustina: Yippie. Done.
So, there are currently 2 open incidents in Bosun.
4: critical: <no value> on muffin
Acked and active since 2 hours with {host=muffin}.
lukas.pustina acknowledged this incident at a few seconds ago.
5: warning: <no value> on cake
Acked and active since 3 hours with {host=cake}.
lukas.pustina acknowledged this incident at a few seconds ago.
Lukas Pustina> close bosun incidents 4,5 because Everything is fine again.
hubot> @lukas.pustina: Trying to close Bosun incidents 4,5 ...
hubut> @lukas.pustina: Yippie. Done.
Lukas Pustina> list open bosun incidents
hubot> @lukas.pustina: Retrieving Bosun incidents ...
hubot> @lukas.pustina: Yippie. Done.
Oh, no incidents there. Everything is ok.