<html><head><title>Re: [smokeping-users] Alerting when a Slave stops sending data</title>
</head>
<body>
<span style=" font-family:'Courier New'; font-size: 9pt;">Monit won't help if the slave went down because someone unplugged it, or some other disaster befell it. It also won't help if the process is still running, but not actually pushing data to the master.<br>
<br>
However, it does have the benefit of being easy to install and configure, with no development/debug time required.<br>
<br>
For the use cases I've got, I think something running on the master would be more likely to be helpful more of the time. [I can't recall a single case where the slave was still up and functional, where Monit would do anything, yet the smokeping slave process was borked. But that may just be me.]<br>
<br>
-Greg<br>
<br>
</span><table>
<tr>
<td width=2 bgcolor= #0000ff><br>
</td>
<td><span style=" font-family:'courier new'; font-size: 9pt;">I second the monit suggestion. I have used it for exactly this purpose (watching/restarting slave threads) in the past.<br>
<br>
regards,<br>
Darren<br>
<br>
On 23 April 2018 at 05:47, Bill Houle <</span><a style=" font-family:'courier new'; font-size: 9pt;" href="mailto:bhoule@siliconexus.com">bhoule@siliconexus.com</a><span style=" font-family:'courier new'; font-size: 9pt;">> wrote:<br>
As someone who recently had to implement a monitor of not-smokeping processes, might I suggest “monit”? It is a fairly mainstream package that is readily available in yum and apt-get repos. <br>
<br>
Monit is a locally-installed (ie per slave) daemon process that can monitor files (by timestamp or checksum), processes (by PID), programs (by exit code), and system (by resource consumption). It has a flexible config language that can alert/start/stop/exec based on those monitor conditions. <br>
<br>
I could see monit being used to watch each slave and alert and/or auto-restart the data collection. <br>
<br>
—bill<br>
<br>
<br>
<br>
On Apr 22, 2018, at 11:29 AM, Gregory Sloop <</span><a style=" font-family:'courier new'; font-size: 9pt;" href="mailto:gregs@sloop.net">gregs@sloop.net</a><span style=" font-family:'courier new'; font-size: 9pt;">> wrote:<br>
<br>
This is an awesome idea - and one I've wished for in the past - but never got around to working on.<br>
Checking the slave data files modification times seems plausible as a way to check updates - but you'd have to test to be sure. [IIRC that will work though.]<br>
<br>
Personally, I'd probably try to write it in bash - or something completely external to smokeping. [Bash because of few dependicies - though you'll probably want/need something like sendemail for email notifications...<br>
<br>
If slaves are behind NAT or something similar, you'll have to have a way to get to the slave for handling a restart, but that's really outside the scope of what you're doing. <br>
<br>
Honestly, simply getting notification that a slave is not pushing updates would be more than enough - even without the restart.<br>
<br>
Sounds fab to me. And I can't think of a better way, off hand.<br>
<br>
-Greg<br>
<br>
</span><table>
<tr>
<td width=4 bgcolor= #0000ff><br>
</td>
<td><span style=" font-family:'courier new'; font-size: 9pt;">Hello,<br>
<br>
I have a Debian Jessie box with Smokeping 2.6 installed on it.<br>
<br>
It receives data from Slaves over the Internet (10 slaves or so).<br>
Each Slave roughly monitors xDSL or fiber links.<br>
<br>
Every monday, I can see that data from one or two slaves is missing.<br>
Then I remotely restart smokeping service on slave where data is missing.<br>
<br>
I would like to implement something like:<br>
<br>
- if no data at all from Slave for a given period of time, then restart Slave's smokeping service and send a Notice email<br>
<br>
- if no data at all from Slave for a longer period of time and Slave's restart already attempted, then send a Warning email<br>
<br>
As Slaves data is stored on a known directory ins Master's filesystem, I think I can detect when data from a slave has not been lately  modified, reading directories of files modification times.<br>
<br>
Is there a better way to do so ? Alert's settings seem more appropriate when WAN links in my case, are slower.<br>
<br>
Best regards</td>
</tr>
</table>
<br><br>
<br>
<span style=" font-family:'courier new'; font-size: 9pt; color: #c0c0c0;"><i>-- <br>
Gregory Sloop, Principal: Sloop Network & Computer Consulting<br>
Voice: 503.251.0452 x82<br>
EMail: </i></span><a style=" font-family:'courier new'; font-size: 9pt;" href="mailto:gregs@sloop.net">gregs@sloop.net</a><br>
<a style=" font-family:'courier new'; font-size: 9pt;" href="http://www.sloop.net">http://www.sloop.net</a><br>
<span style=" font-family:'courier new'; font-size: 9pt; color: #c0c0c0;"><i>---<br>
</i><span style=" color: #000000;">_______________________________________________<br>
smokeping-users mailing list<br>
</span></span><a style=" font-family:'courier new'; font-size: 9pt;" href="mailto:smokeping-users@lists.oetiker.ch">smokeping-users@lists.oetiker.ch</a><br>
<a style=" font-family:'courier new'; font-size: 9pt;" href="https://lists.oetiker.ch/cgi-bin/listinfo/smokeping-users">https://lists.oetiker.ch/cgi-bin/listinfo/smokeping-users</a><br>
<br>
<span style=" font-family:'courier new'; font-size: 9pt;">_______________________________________________<br>
smokeping-users mailing list<br>
</span><a style=" font-family:'courier new'; font-size: 9pt;" href="mailto:smokeping-users@lists.oetiker.ch">smokeping-users@lists.oetiker.ch</a><br>
<a style=" font-family:'courier new'; font-size: 9pt;" href="https://lists.oetiker.ch/cgi-bin/listinfo/smokeping-users">https://lists.oetiker.ch/cgi-bin/listinfo/smokeping-users</a><br>
</td>
</tr>
</table>
<br><br>
<span style=" font-family:'arial'; color: #c0c0c0;"><i>-- <br>
Gregory Sloop, Principal: Sloop Network & Computer Consulting<br>
Voice: 503.251.0452 x82<br>
EMail: </i></span><a style=" font-family:'arial';" href="mailto:gregs@sloop.net">gregs@sloop.net</a><br>
<a style=" font-family:'arial';" href="http://www.sloop.net">http://www.sloop.net</a><br>
<span style=" font-family:'arial'; color: #c0c0c0;"><i>---</body></html>