<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Hi,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
I ran the strace command while upssched was 100% CPU hungry. This is what I got:</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
1686633611.702798 read(7, "", 1)        = 0 <0.000004>
<div class="ContentPasted0">1686633611.702816 read(7, "", 1)        = 0 <0.000004></div>
<div class="ContentPasted0">1686633611.702834 pselect6(11, [7 10], NULL, NULL, {tv_sec=1, tv_nsec=0}, NULL) = 1 (in [7], left {tv_sec=0, tv_nsec=999998800}) <0.000006></div>
<div class="ContentPasted0">1686633611.702862 read(7, "", 1)        = 0 <0.000004></div>
<div class="ContentPasted0">1686633611.702880 read(7, "", 1)        = 0 <0.000004></div>
.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0 ContentPasted1">
1686633611.705206 read(7, "", 1)        = 0 <0.000004>
<div class="ContentPasted1">1686633611.705224 read(7, "", 1)        = 0 <0.000004></div>
<div class="ContentPasted1">1686633611.705242 pselect6(11, [7 10], NULL, NULL, {tv_sec=1, tv_nsec=0}, NULL) = 1 (in [7], left {tv_sec=0, tv_nsec=999999204}) <0.000005></div>
<div class="ContentPasted1">1686633611.705268 read(7, "", 1)        = 0 <0.000004></div>
<div class="ContentPasted1">1686633611.705288 read(7, "", 1)        = 0 <0.000302></div>
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0 ContentPasted1">
there are 128 "read(7" lines between every pselect6 lines (I did count the read lines for couple of blocks, 128 in each of them). Nothing else in the strace log, just read and pselect lines for the short time I let strace to run.</div>
<div id="appendonsend"></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Any help from this?</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Best regards,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Kari</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size: 11pt; color: rgb(0, 0, 0);"><b>From:</b> Jim Klimov <jimklimov+nut@gmail.com><br>
<b>Sent:</b> Tuesday, June 13, 2023 00:35<br>
<b>To:</b> Kari Lempiäinen <kari.lempiainen@summerday.net><br>
<b>Cc:</b> Arnaud Quette via Nut-upsuser <nut-upsuser@alioth-lists.debian.net><br>
<b>Subject:</b> Re: [Nut-upsuser] Upssched 100% CPU after updating Debian 12</font>
<div> </div>
</div>
<div>
<div dir="ltr">
<div dir="auto">Hello,</div>
<div dir="auto"><br>
</div>
<div>  Thank you for the report and I don't recall any similar issues.</div>
<div><br>
</div>
<div>  Unfortunately, upssched did not have any "native" enablement of debug verbosity in 2.8.0 and older releases (some added with
<a href="https://github.com/networkupstools/nut/pull/1864" data-auth="NotApplicable">
https://github.com/networkupstools/nut/pull/1864</a> recently), so maybe the best way to get more info at the moment would be to watch syscalls made when it begins to hog CPU and make educated guesses from there, e.g.:</div>
<div><br>
</div>
<div>    # strace -f -ttt -T -p "`ps -ef | grep -w upssched | grep -v grep | awk '{print $2}'`"</div>
<div><br>
</div>
<div>  I suppose when hogging the CPU it has some reason to quickly interrupt its processing loop - perhaps a lack of some file (socket?) it waits on, etc.</div>
<div><br>
</div>
<div>Hope this helps,<br>
</div>
<div>Jim Klimov<br>
</div>
<div><br>
</div>
</div>
<br>
<div class="x_gmail_quote">
<div dir="ltr" class="x_gmail_attr">On Mon, Jun 12, 2023, 14:59 Kari Lempiäinen <<a href="mailto:kari.lempiainen@summerday.net" data-auth="NotApplicable" data-loopstyle="linkonly">kari.lempiainen@summerday.net</a>> wrote:<br>
</div>
<blockquote class="x_gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left:1px solid rgb(204,204,204); padding-left:1ex">
<div lang="en-FI" style="">
<div>
<p class="x_MsoNormal"><span lang="FI" style="font-family:"Courier New"">Hi,<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="FI" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">I have been running nut successfully for a long time with my Debian 11 server. I upgraded my server to Debian 12 today, which upgraded nut also from 2.7.4-13 to 2.8.0-7. I noticed that
 after upgrade there was a upssched process running and taking 100% cpu time.<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">I checked if there were any changes to configuration file formats with nut upgrade and only differences I noticed were a terminology change from master/slave to primary/secondary in
 upsd.users and upsmon.conf, and dummy mode change for the dummy-ups. I didn’t expect these being the culprit, but I made the changes to my configuration. No change, after five minutes of starting nut, upssched will be running with 100% cpu usage.<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Any ideas what could be causing this? Here is my configuration and in the end are some log snippets:<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">heartbeat.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""># heartbeat.conf -- 10 minute heartbeat<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">ups.status: OL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">TIMER 300<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">ups.status: OB<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">TIMER 300<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">hosts.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">MONITOR eaton5s@localhost "Eaton 5S 700"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">nut.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">MODE=netserver<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">ups.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">maxretry = 3<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">[eaton5s]<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        driver = usbhid-ups<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        port = auto<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        desc = "Eaton 5S 700i UPS"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        vendorid = "0463"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        productid = "FFFF"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        pollinterval = 15<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">[heartbeat]<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        driver = dummy-ups<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        mode=dummy-loop<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        port = heartbeat.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        desc = "Watch over NUT"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">upsd.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">LISTEN 0.0.0.0 3493<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">upsmon.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">RUN_AS_USER root<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">MONITOR eaton5s@localhost 1 upsmaster xxx primary<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">MONITOR heartbeat@localhost 0 upsmaster xxx primary<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">MINSUPPLIES 1<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYCMD /sbin/upssched<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">SHUTDOWNCMD "/sbin/shutdown -h +0"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">POLLFREQ 5<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">POLLFREQALERT 5<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">HOSTSYNC 15<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">DEADTIME 15<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">POWERDOWNFLAG /etc/killpower<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">RBWARNTIME 43200<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOCOMMWARNTIME 300<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">FINALDELAY 5<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG ONLINE "UPS %s: On line power."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG ONBATT "UPS %s: On battery."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG LOWBATT "UPS %s: Battery is low."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG REPLBATT "UPS %s: Battery needs to be replaced."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG FSD "UPS %s: Forced shutdown in progress."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG SHUTDOWN "Auto logout and shutdown proceeding."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG COMMOK "UPS %s: Communications (re-)established."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG COMMBAD "UPS %s: Communications lost."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG NOCOMM "UPS %s: Not available."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYMSG NOPARENT "upsmon parent dead, shutdown impossible."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG ONLINE EXEC<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG ONBATT EXEC<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG LOWBATT SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG REPLBATT SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG FSD SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG SHUTDOWN SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG COMMOK SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG COMMBAD SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG NOCOMM SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">NOTIFYFLAG NOPARENT SYSLOG+WALL<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">upssched.conf<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">CMDSCRIPT /etc/nut/upssched-cmd<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">PIPEFN /var/run/nut/upssched.pipe<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">LOCKFN /var/run/nut/upssched.lock<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONBATT eaton5s@localhost EXECUTE onbatt<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONBATT eaton5s@localhost START-TIMER beeperoff 15<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONLINE eaton5s@localhost EXECUTE online<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONLINE eaton5s@localhost CANCEL-TIMER beeperoff<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONBATT eaton5s@localhost START-TIMER shutdown-ws2019 300<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONLINE eaton5s@localhost CANCEL-TIMER shutdown-ws2019<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONBATT heartbeat@localhost CANCEL-TIMER heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">AT ONBATT heartbeat@localhost START-TIMER heartbeat-failure-timer 660<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">upsd.users<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">[upsmaster]<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        password = xxx<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        upsmon primary<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        actions = set<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        actions = fsd<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        instcmds = all<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">[upsslave]<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        password = xxx<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        upsmon secondary<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">upssched-cmd<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">#! /bin/bash<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">UPS="eaton5s"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">UPS_USERNAME="upsmaster"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">UPS_PASSWORD="xxx"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">EMAIL_TO=<a href="mailto:xxx@xxx.xxx" data-auth="NotApplicable" data-loopstyle="linkonly">xxx@xxx.xxx</a><u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">EMAIL_FROM=<a href="mailto:xxx@xxx.xxx" data-auth="NotApplicable" data-loopstyle="linkonly">xxx@xxx.xxx</a><u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">STATUS=`upsc $UPS ups.status 2>&1 | grep -v '^Init SSL'`<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">CHARGE=`upsc $UPS battery.charge 2>&1 | grep -v '^Init SSL'`<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">CHMSG="[$STATUS]:$CHARGE%"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">MSG="dummy message - $1"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">case $1 in<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        online) MSG="$UPS, $CHMSG - On line power - power supply had been restored." ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        onbatt) MSG="$UPS, $CHMSG - On battery - power failure - save your work!" ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        lowbatt) MSG="$UPS, $CHMSG - Battery is low - shutdown now!" ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        beeperoff)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                logger -i -t upsshed-cmd "Turning off Beeper"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                STATUS=`upsc ${UPS} ups.beeper.status 2>&1 | grep -v '^Init SSL'`<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                if [[ "${STATUS}" == "enabled" ]] ; then<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                        upscmd -u ${UPS_USERNAME} -p ${UPS_PASSWORD} ${UPS} beeper.toggle<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                fi<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        shutdown-ws2019)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                MSG="$UPS, $CHMSG - Stopping WS2019"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                logger -i -t upsshed-cmd "Stopping WS2019"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                setsid /usr/local/bin/shutdown-ws2019 &<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        upsgone)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                logger -i -t upssched-cmd "The UPS has been gone for awhile"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        heartbeat-failure-timer)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                MSG="NUT heart beat fails. $CHMSG"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                # Email<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                MSG1="Hello, upssched-cmd reports NUT heartbeat has failed."<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                MSG2="Current status: $CHMSG \n\n$0 $1"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                MSG3="\n\n$( ps -elf | grep -E 'ups[dms]|nut' )"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                echo -e "$MSG1 $MSG2 $MSG3" | /usr/bin/mail -r "$EMAIL_FROM" \<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                -s "NUT heart beat fails. Currently $CHMSG" "$EMAIL_TO" ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">        *)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                logger -i -t upssched-cmd "Unrecognized command: $1"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">                ;;<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">esac<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">logger -i -t upssched-cmd $MSG<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">wall "$MSG"<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">This is normal ups activity in daemon log from the previous version:<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:10:50 fricka upssched[16007]: Cancelling timer: heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:10:50 fricka upssched[16007]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:20:50 fricka upssched[16007]: Cancelling timer: heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:20:50 fricka upssched[16007]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:30:55 fricka upssched[16007]: Cancelling timer: heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:30:55 fricka upssched[16007]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:40:55 fricka upssched[16007]: Cancelling timer: heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:40:55 fricka upssched[16007]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:50:55 fricka upssched[16007]: Cancelling timer: heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 10 23:50:55 fricka upssched[16007]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">This is daemon log from the new version, first two lines are the last lines of the startup messages. One same upssched process (124835) running with 100% cpu from 21:07:<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:02:40 fricka dummy-ups[121803]: sock_connect: enabling asynchronous mode (auto)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:02:41 fricka usbhid-ups[121820]: sock_connect: enabling asynchronous mode (auto)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:07:40 fricka upssched[124835]: Timer daemon started<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:07:40 fricka upssched[124835]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:07:40 fricka nut-monitor[124832]: Network UPS Tools upsmon 2.8.0<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:12:40 fricka nut-monitor[128005]: Network UPS Tools upsmon 2.8.0<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:17:40 fricka upssched[124835]: Cancelling timer: heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:17:40 fricka upssched[124835]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:17:40 fricka nut-monitor[131233]: Network UPS Tools upsmon 2.8.0<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:22:45 fricka nut-monitor[134330]: Network UPS Tools upsmon 2.8.0<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:27:45 fricka upssched[124835]: Cancelling timer: heartbeat-failure-timer<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:27:45 fricka upssched[124835]: New timer: heartbeat-failure-timer (660 seconds)<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">Jun 11 21:27:45 fricka nut-monitor[137838]: Network UPS Tools upsmon 2.8.0<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New"">---------------------------------------------------<u></u><u></u></span></p>
<p class="x_MsoNormal"><span lang="EN-US" style="font-family:"Courier New""><u></u> <u></u></span></p>
</div>
</div>
_______________________________________________<br>
Nut-upsuser mailing list<br>
<a href="mailto:Nut-upsuser@alioth-lists.debian.net" data-auth="NotApplicable" data-loopstyle="linkonly">Nut-upsuser@alioth-lists.debian.net</a><br>
<a href="https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser" data-auth="NotApplicable">https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser</a><br>
</blockquote>
</div>
</div>
</body>
</html>