Incident Command Utilities

This is a simple toolkit of utilities that make my on-call life easier.

Source code https://github.com/dave-shawley/ictools
Download https://pypi.python.org/pypi/ictools/
Documentation http://pythonhosted.org/ictools/

Installation

pip3 install ictools

Tools

list-pagerduty-incidents

list-pagerduty-incidents [options] START END

This utility retrieves incidents from PagerDuty for the time range and writes them to standard output. The –format option controls the output format which is JSON by default.

Options

–format= json or confluence
This optional parameter sets the format of the produced output. The default for this option is to production JSON output.
–verbose, -v
Increases the diagnostic verbosity. By default, errors and warnings are displayed. This option can be specified multiple times for increased effect.
–quiet, -q
This option disables all diagnostic output.

Parameters

START
The starting date for the range of incidents to retrieve.
END
The ending date for the range of incidents to retrieve.

scan-hipchat-room

scan-hipchat-room [options] START END ROOM [ROOM...]

This utility retrieves messages from one or more HipChat rooms for the given time range. The –format option controls the output format which defaults to JSON.

Options

–format= json or confluence
This optional parameter sets the format of the produced output. The default for this option is to production JSON output.
–verbose, -v
Increases the diagnostic verbosity. By default, errors and warnings are displayed. This option can be specified multiple times for increased effect.
–quiet, -q
This option disables all diagnostic output.

Parameters

START
The starting date for the range of messages to retrieve.
END
The ending date for the range of messages to retrieve.
ROOM
One or more room names to fetch messages from.

create-confluence-table

create-confluence-table

This utility reads the “confluence” formatted output from other commands as its standard input. It parses the timestamp, sorts the rows based on the timestamp, and prints them to the standard output stream.

Environment Variables

HIPCHAT_TOKEN

API token to use when talking to the HipChat API.

PAGERDUTY_TOKEN

API token to use when talking to the pagerduty API.

Release History

0.3.0 (17-Feb-2017)

  • Added image support to HipChat.

0.2.0 (11-Feb-2017)

  • added “metadata” element to all JSON output.
  • switched to using argparse for parsing. The only observable effect of this is that --help and --version are now supported.
  • added --format command line option.
  • added --quiet and --verbose command line options.
  • changed default diagnostic level from INFO -> WARNING.
  • added create-confluence-table utility

0.1.0 (23-Jan-2017)