Ok, so at least we know that pings can be sent when the agent is able to get them.
When I checked earlier, the agent had no pings to send which means it wasn't getting any results from the operating system.
The pings aren't really important in terms of being an accurate measurement. They are mainly being sent as information that could be useful in some situations but mostly to see if there is a substantial change in latency between point A and point B.
If pings latency goes up by a certain percentage, the agents algorithm considers that this could mean something happening and can trigger a speed test for example and other tests.
However, if pings aren't being sent, it means the agent is not running right as ICMP is one of several functions used to also determine if there is an IP outages.
All that to say, it's important that you see pings being sent to the dashboard.
Since restarting the agent got pings going again, to me, it means maybe there is something on the OS that is monitoring certain behavior and limiting something like ICMP.
I would rule out the agent as having a bug because we would have seen it by now as there are many others running the same version.
These can be a bit hard to figure out sometimes. Let's see what happens next.
In terms of running as a service, I think this is what you are looking for.
Monitor your Internet with raspberry pi, nanopi and other arm devices