# Mailcow-CheckMK ## CheckMK Special Agent for Mailcow Monitors various aspects of a Mailcow instance: Email domains with quota usage, number of mailboxes, number of aliases Mailboxes with quota usage, number of messages, last logins via IMAP/POP3/SMTP You have to create an API Key for the MKP to work. Login to your Mailcow instance and go to System|Configuration Take a note of the section API, expand it and activate "Activate API" in the section "Read-Only Access" Don't forget to insert the IP of your CheckMK instance into the textbox "Allow API access from these IPs/CIDR networks". ## Caveats: Tested only with dockerized versions of Mailcow Tested with Mailcow version 2022-07a and higher Please feel free to add other working environments via review/email. ## General installation instructions: 1. Upload and enable the MKP 2. Apply changes 3. Click Setup, search for "Mailcow" 4. Click on "Mailcow Server Information" below "Other integrations" 5. Create a new rule and fill in all mandatory information (Hostname, API Key) 6. Adjust all other options to your needs 7. Bind this rule to your Mailcow host object (e.g. via "Explicit hosts") 8. If you have no host object at all, create a dummy host for this (with no IP or something like 127.0.0.2) 9. Assure that your agents settings for this host object are correct (must contain "Configured API integrations") 10. Apply your changes 11. Execute a service discovery on your Mailcow host(s) and accept the newly detected services 12. Feel free to adjust the various parameters for thresholds within the available parameter sections (Setup, "Service monitoring rules" after searching for "Mailcow") ## Version history: 2023/09/22: 1.1.4 Bugfix for the last bugfix :-) 2023/09/22: 1.1.3 Bugfix for usage calculation if quota is not set (mailboxes) 2023/09/10: 1.1.2 Checks for Solr status added 2023/08/27: 1.0.0 Section "mailcow_mailboxes" completed 2023/08/26: 0.2.2 Section "mailcow_domains" completed 2023/08/21: 0.1.0 Section "mailcow_info" completed 2023/08/20: 0.0.1 Special agent completed ## Examples how the services look like: Services Overview: ![Services Overview](images/Mailcow-Services-Overview.png) Service Details: ![Service Detail Info](images/Mailcow-Info-Details.png) ![Service Detail Domain](images/Mailcow-Domains-Details.png) ![Service Detail User](images/Mailcow-Users-Details.png)