Check to ensure z-push is working
-
Hi,
The ActiceSync protocol has the very unpleaseant behavior that out of “enduser consideration” there aren’t any logs or error messages (e.g. with Apple). As such, it frequently happens that things just stop working, without any message. This is extremely frustrating.
I am using nagios already to keep track of many services (incl. the kopano core process).
I would like to add a test for z-push as well. Ideally the test would go as close to a client as possible. Ideally it would be a simple command that I can put into a shell script that checks if z-push works correctly and returns a nonzero value on error.
Any suggestions on how to implement this?
Thanks!
-
Hi @divB,
@divB said in Check to ensure z-push is working:
Hi,
The ActiceSync protocol has the very unpleaseant behavior that out of “enduser consideration” there aren’t any logs or error messages (e.g. with Apple). As such, it frequently happens that things just stop working, without any message. This is extremely frustrating.
Could you provide examples which Z-Push things frequently stop working?
I am using nagios already to keep track of many services (incl. the kopano core process).
I would like to add a test for z-push as well. Ideally the test would go as close to a client as possible. Ideally it would be a simple command that I can put into a shell script that checks if z-push works correctly and returns a nonzero value on error.
Which client? Android? iOS? Outlook over ActiveSync? There are also other 3rd party solutions like Nine and all of them behave slightly different.
What is “z-push works correctly”? There are 22 commands defined by ActiveSync protocol and if you want to cover every case it will become quite complicated.
Any suggestions on how to implement this?
If you want a “close to a client behaviour” then you’d need to implement an ActiveSync client.
If you just want to monitor Z-Push, you could watch z-push-error.log for fatals or errors or the web server log for non 200 responses in Microsoft-Server-ActiveSync requests.
Manfred
-
you cold also implement a script that checks if the website https://example.com/Microsoft-Server-ActiveSync is working. If you put in your credentials you get a status back
-
1st of all i advice you to switch over to icinga2 ;-) - it has a fantasic gui and with the icinga director you can create checks by gui.
There is a very nice check call check_http, you can also use it with nagios
example:
https://linux.101hacks.com/unix/check-http/Z-Push uses as far as I know basic http Authentication. So you can create a dummy user to verify the availability of the page.
it must be somethin like:
check_http -H https://yourservernamehere/Microsoft-Server-ActiveSync -a user:password -r “not supported”