How to verify notify_push works correctly?

Hi,

I worked my way through the notify_push installation, went quite smooth on my server. Used the wizzard on the CLI. Now everything seems setup correct, I also opened up the ports on my firewall, but how do I verify if it is used and really works for my clients?

βœ“ redis is configured
βœ“ push server is receiving redis messages
βœ“ push server can load mount info from database
βœ“ push server can connect to the Nextcloud server
βœ“ push server is a trusted proxy
βœ“ push server is running the same version as the app configuration saved

You can add the β€œβ€“log-level debug” switch to the command line of the notify_push daemon and redirect its output to a log file by adding β€œ> /path/to/log-file.log”.

1 Like

one can check how often the client performs PROPFIND requests (without notify_push every 15s) and if Talk calls/notification arrive immediately.

see following post for client log examples…

1 Like

Would be great to have an indicator on the software which uses it.

Like the Desktop app showing to be using notify push, the web frontend could do the same, or the plugin itself indicate the information like Talk is doing it if connected to the turn server successful.

After some digging I found some additional information which I want to add to the thread:

A ticket at notify_push where someone requests something similar, integrating some statistics into NC to get the information easier

Quite a simple way to see some metrics, and see if it works is by using occ

sudo -u www-data php /var/www/nextcloud/occ notify_push:metrics
Active connection count: 4
Total connection count: 47
Total database query count: 129
Events received: 217602
Messages send: 4417

Additionally as mentioned above the debug option for notify_push

sudo -u www-data php /var/www/nextcloud/occ notify_push:log debug
sudo journalctl -eu notify_push

I hope this helps someone :smile:

4 Likes

Hi.
Since search engines led me here (again),
I would like to add, that there is also a binary called β€œtest_client” which is released on github (at the time of writing: version 0.6.3 of the package):

With this binary you can test from any linux-x64 compatible client:

./test_client https://cloud.mydomain.de maxmuster 'MySecret'
[2023-11-03 18:17:39.275778 +01:00] INFO [test_client] test_client/src/main.rs:34: Found push server at wss://cloud.mydomain.de/push/ws
[2023-11-03 18:17:39.459148 +01:00] INFO [test_client] test_client/src/main.rs:68: Authenticated

if the push-service runs and within the push-server logs there will be an β€œINFO”-loglevel line:

[2023-11-03 17:17:39.458976 +00:00] INFO [notify_push::connection] src/connection.rs:87: new websocket authenticated as maxmuster