Metadata-Version: 2.1
Name: checkmk-commander
Version: 0.8.2
Summary: Curses interface to Checkmk Raw.
Home-page: https://gitlab.com/larsfp/checkmk-commander
Author: Lars Falk-Petersen
Author-email: dev@falkp.no
License: GPLv3+
Keywords: monitoring
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: System :: Networking
Classifier: Environment :: Console :: Curses
Classifier: Operating System :: POSIX :: Linux
Classifier: Environment :: Console
Classifier: Intended Audience :: System Administrators
Classifier: Topic :: System :: Networking :: Monitoring
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: urwid
Requires-Dist: requests

Checkmk Commander
=================

Efficient Curses interface for Checkmk Raw, <https://checkmk.com/>.

![Logo](/images/logo_256.png)

The goal is not to completely avoid the web interface, but to speed up common day-to-day tasks. Actions like acknowledge, downtime, reinventorize can be done in seconds, with keyboard only. Overview is clean and simple.

Alpha quality. Commands work, but I make no promises.

Screenshots
-----------

![Acknowledge and help v.8](https://gitlab.com/larsfp/checkmk-commander/-/raw/master/images/ack0.8.gif)

![Details v.6](https://gitlab.com/larsfp/checkmk-commander/-/raw/master/images/Screenshot v.6.png)

![Overview v.3](https://gitlab.com/larsfp/checkmk-commander/-/raw/master/images/Screenshot v.3.png)

Installation
------------

From PIP:

```bash
pip3 install checkmk-commander
```

Run command: chkcom

Hot-keys
--------

Press ? in app to get an overview.

Implementation details and limitations
--------------------------------------

Uses CheckMK's web API. You need an "machine" account with a secret. A normal user won't work.

High pri features
-----------------

* [x] list service problems from several checkmk instances
* [ ] list (distributed monitoring) site statuses
* [v] ack service problems
  * [x] Show popup to add comment
  * [x] Parse time from comment
  * [x] ack service problems on all sites, not just main host
* [ ] ack host problems
* [ ] downtime service problems
* [x] comment service problems
* [x] show down hosts
* [ ] show service problem count

Medium pri features
----------------

* [x] Reinventorize a host
* [v] Make actions async
* [ ] Add logging

Low pri features
----------------

* [x] Ability to run remotely (without being on checkmk host)
* [ ] Reschedule check
* [ ] Add new host?
* [ ] Search in alert list
* [ ] Sort alert list
* [ ] Act on more than one alert at a time?
* [ ] if running locally, fetch secret from var/check_mk/web/USER/automation.secret
* [ ] Show in overview that comments on a service exists

TODO
----

* Improve readability, colors.
* Clean up code.
* Find down time for down-alerts.
* Fetch host comments for down hosts.
* Status bar at bottom should perhaps be switched for a scrolling textview with "Host- and Service events"
* Icon, desktop integration.

Inspirations and help
---------------------

* Icon made by RallyPointComic <https://anus.no/>
* <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>


