Curses interface to Checkmk Raw.
Project description
Check Commander
Check Commander is an efficient curses interface for the monitoring software Checkmk.
Most day-to-day activities like time limited acknowledgement, downtime, reinventorize, look up server in a wiki, copy alert text for a ticket system and SSH in to servers can be done with a few keypresses. See screenshots to understand what it's about.
Screenshots
SSH to selected host (which opens a new terminal, in this case a new split in tilix):
Acknowledge an alert and display help:
Show details for an alert:
Getting Started
Prerequisites
- An up to date Checkmk instance.
- Linux, MacOS (not tested on other platforms yet)
- Python 3.6 or later
Installation
From PIP:
pip3 install checkmk-commander
Run command: chkcom
. It usually ends up in ~/.local/bin on linux (installed with --user), /Users//Library/Python/3.8/bin on MacOS.
Configuration
You need a "machine" account for your Checkmk instance. A normal user won't work. See Checkmk user config.
You will be asked for configuration details on first run, and a config will be created at ~/.config/check-commander.ini
Example check commander config:
host = http://omd.lxd/test/
username = automation
secret = long-random-string
How an ssh connection is opened can be changed. Suggested alternatives (put one in config file):
terminal_command = x-terminal-emulator -e ssh HOSTNAME
terminal_command = tmux split-window -v -c "$PWD" ssh HOSTNAME
terminal_command = tmux new-window -c "#{pane_current_path}" ssh HOSTNAME
These should open default terminal, split your current tmux tab and open new tmux tab respectively.
How a wiki is opened can be changed. Suggested alternative:
url_with_hostname = https://wiki.example.com/?search=HOSTNAME
Refresh delay in seconds can be set thus:
delay = 5
Hot-keys
Press ? in app to get an overview.
Support
Open a gitlab issue if you hit a bug or need help.
Implementation details
Uses CheckMK's web API.
Additional functionality like copy to clipboard or open browser requires python modules cliboard and webbrowser. You will be notified to install them.
Known bugs
- Calling a reschedule may give the error "ERROR - you did an active check on this service - please disable active checks". Not sure why this happens.
- If a non-OMD site is connected to your "distributed monitoring", calling WATO commands on it will return 200 and an error. The WATO command will not be run.
Development
Tests can be run with tox
. Static tests have been done with prospector.
Inspirations and thanks
- Icon made by RallyPointComic
- Thanks to Frank for lots of suggestions and feedback.
- Thanks to Scott Hansen for testing and feedback.
- https://github.com/aranair/rtscli/
- https://forum.checkmk.com/t/writing-to-nagios-cmd-in-distributed-monitoring/17616
- https://checkmk.com/cms_legacy_multisite_automation.html
What users say
- "Herregud så mye bedre dette er enn å kuke i webinterface"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.