Monitoring / Health Check improvements - more details

Title: Monitoring / Health Check improvements - more detailse

Through its Health Check feature Zammad provides a continues monitoring of its status and will directly inform you about any change.

Current situation:

Currently we are missing a status update with some more details as provided nowadays in case of an error.

The backend ui show an message like

Channel: Email::Account in Can't use Channel::Driver::Imap: #<Net::IMAP::NoResponseError: Authentication failed.>

If you monitor the Health Check URL, if will give you some more information in JSON format like healthy (true or false), message, issues, and actions.

{
   "healthy":false,
   "message":"Channel: Email::Account in  Can't use Channel::Driver::Imap: #\u003cNet::IMAP::NoResponseError: Authentication failed.\u003e",
   "issues":[
      "Channel: Email::Account in  Can't use Channel::Driver::Imap: #\u003cNet::IMAP::NoResponseError: Authentication failed.\u003e"
   ],
   "actions":[
      
   ],
   "token":"xxxxxxxxxxxxxxxxxxxxxxx"
}

In this example the imap mail account can’t be use anymore due to a failed authentication. This error is very clear.

What is missing?

The information missing in this case is the account ID or name/e-mail address.

Especially when an error only appears temporary and you can’t look into Zammad straight away, it make it almost impossible to find out which account was affected.

This is only an example but I think, it could use some tweaking.

Improvements:

  • Show channel ID or name/address in the error message.

Extras:

  • Add different levels of Health.

Of course it sounds a bit strange since the system ist either healthy or unhealthy but maybe 3 levels of monitoring could fit some more needs:

  • Error: like it is now
  • Info: additional information on the current status
  • Debug: additional error messages from the log files.
1 Like

There is another thread about this: Failed Health Check due to SMTP Driver Read Timeout Error

Although that goes into a different direction.

What options exist currently to fine tune? I couldn’t find anything in the documentation.

Thanks,
Gijs