[Version 2 Release] RaspberryPints - Digital Taplist Solution

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
it opens all of them then when a pour is started it closes the ones not pouring

got it. Thanks

my next question is I get regular failures of the temp monitor. I end up with a Unable to Run 1Wire Temperature error in the log. I turned on the debug logging in /python/config to true

config['flowmon.debug' ] = True

but I don’t see any more details in the log. It works fine for 5 to 10 min then bombs until I restart flow monitor, Any suggestions ?
 
Last edited:
but I don’t see any more details in the log. It works fine for 5 to 10 min then bombs until I restart flow monitor, Any suggestions ?
off the back, no it seems like you enabled debugging so it should give you the error after 1Wire Temperature:

you could change debug to log on line 745 and restart to see if it actually logs the error you are getting

1610337798668.png
 
Ok here is the error log message I get. i haven’t put my system in the keezer yet so the temps are in the 75 degree range. Would that cause an out of range scenario?

1Wire Temperature: list index out of range1
2021-01-10 21:25:39FlowMonitorI
 
Last edited:
Ok here is the error log message I get. i haven’t put my system in the keezer yet so the temps are in the 75 degree range. Would that cause an out of range scenario?
Can you tell me what files you have in the /sys/bus/w1/devices/28*/w1_slave directories (28* indicates directories that start with 28)?

the other thing that will help me is if you add the following lines to 746 of FlowMonitor.py
exc_type, exc_value, exc_traceback = sys.exc_info()
traceback.print_tb(exc_traceback, limit=1, file=sys.stdout)
1610371278141.png

I commited that to GitHub if you get latest.
You will have to look at /var/log/rpints.log to get the stack trace though it will not log to the webpage
 
I did a full reinstall and it’s running the updated code but I don’t get any further detail in /var/log/rpints.log. Here are further details

he other thing that will help me is if you add the following lines to 746 of FlowMonitor.py
exc_type, exc_value, exc_traceback = sys.exc_info()
traceback.print_tb(exc_traceback, limit=1, file=sys.stdout)

Here is the code I am running

except Exception, e:
log("Unable to Run 1Wire Temperature")
log("1Wire Temperature: " +str(e))
exc_type, exc_value, exc_traceback = sys.exc_info()
traceback.print_tb(exc_traceback, limit=1, file=sys.stdout)

I changed the debug to log to see if that forces other log messages

and here is the resulting log entries

pi@beer:/var/log $ cat rpints.log

2021-01-11 08:52:23 RPINTS: starting WS server
2021-01-11 08:52:23 RPINTS: starting device monitors...
2021-01-11 08:52:23 RPINTS: starting command server
2021-01-11 08:52:23 RPINTS: starting fan control
2021-01-11 08:52:23 RPINTS: Fan Control fanControl1 is Running
2021-01-11 08:52:24 RPINTS: Not Configured to run Fan
2021-01-11 08:52:24 RPINTS: 1Wire Temperature Thread 1 is Running
2021-01-11 08:52:26 RPINTS: RFID Reader RFID-default is Running
2021-01-11 09:19:34 RPINTS: Unable to Run 1Wire Temperature
2021-01-11 09:19:34 RPINTS: 1Wire Temperature: list index out of range



Can you tell me what files you have in the /sys/bus/w1/devices/28*/w1_slave directories (28* indicates directories that start with 28)?

pi@beer:/sys/bus/w1/devices/28-3c01d075b9ec $ ls -al
total 0

drwxr-xr-x 4 root root 0 Jan 11 08:34 .
drwxr-xr-x 4 root root 0 Jan 11 08:34 ..
-rw-r--r-- 1 root root 4096 Jan 11 09:31 alarms
lrwxrwxrwx 1 root root 0 Jan 11 08:34 driver -> ../../../bus/w1/drivers/w1_slave_driver
--w------- 1 root root 4096 Jan 11 09:31 eeprom
-r--r--r-- 1 root root 4096 Jan 11 09:31 ext_power
drwxr-xr-x 3 root root 0 Jan 11 08:34 hwmon
-r--r--r-- 1 root root 4096 Jan 11 09:31 id
-r--r--r-- 1 root root 4096 Jan 11 09:31 name
drwxr-xr-x 2 root root 0 Jan 11 09:31 power
-rw-r--r-- 1 root root 4096 Jan 11 09:31 resolution
lrwxrwxrwx 1 root root 0 Jan 11 08:34 subsystem -> ../../../bus/w1
-r--r--r-- 1 root root 4096 Jan 11 09:31 temperature
-rw-r--r-- 1 root root 4096 Jan 11 08:34 uevent
-rw-r--r-- 1 root root 4096 Jan 11 08:34 w1_slave

and here is the content of the w1_slave_drivers directory

pi@beer:/sys/bus/w1/drivers/w1_slave_driver $ ls -al
total 0
drwxr-xr-x 2 root root 0 Jan 11 08:34 .
drwxr-xr-x 4 root root 0 Jan 11 08:34 ..
lrwxrwxrwx 1 root root 0 Jan 11 09:37 28-3c01d075b9ec -> ../../../../devices/w1_bus_master1/28-3c01d075b9ec
--w------- 1 root root 4096 Jan 11 09:37 bind
--w------- 1 root root 4096 Jan 11 08:34 uevent
--w------- 1 root root 4096 Jan 11 09:37 unbind

and

pi@beer:/sys/bus/w1/devices $ ls -al

total 0

drwxr-xr-x 2 root root 0 Jan 11 08:34 .
drwxr-xr-x 4 root root 0 Jan 11 08:34 ..
lrwxrwxrwx 1 root root 0 Jan 11 08:34 28-3c01d075b9ec -> ../../../devices/w1_bus_master1/28-3c01d075b9ec
lrwxrwxrwx 1 root root 0 Jan 11 08:34 w1_bus_master1 -> ../../../devices/w1_bus_master1
 
Here is the code I am running
Looks like the same code that I tested with but I don't see the stack trace printed out... wondering if its not outputting to the file like I did for me

/sys/bus/w1/devices/28-3c01d075b9ec
Looks like the system detected 1 temp probe 3c01d075b9ec

Can you post the file?
/sys/bus/w1/devices/28-3c01d075b9ec/w1_slave

In there should be a line with t= in it. Rpints looks for that then takes the value after the = as the temperature in Celsius, if there is nothing after the = then that is the issue
 
Can you post the file?
/sys/bus/w1/devices/28-3c01d075b9ec/w1_slave

pi@beer:/sys/bus/w1/devices/28-3c01d075b9ec $ cat w1_slave

39 01 55 05 7f a5 81 66 1d : crc=1d YES
39 01 55 05 7f a5 81 66 1d t=19562

If t= the number of temperature readings then I can see the t value incresing over time each time I read the w1_slave file so I know its getting readings. Is it possible that the probe experiences glitches and sends an improbably temp value that is out of range for what flowmonitor is looking for causing the error? I am going to try to write out the readings on the probe to a file over time so see what values are being sent to see if that might be part of the issue
 
Last edited:
$ cat w1_slave
Thanks, I setup my test system with that info, but it didn't break....

i corrected the stack trace printing to:

debug(traceback.format_exc())
1610392520586.png


This is saved to the file and the log webpage.

If you could make htat change and let me know the new output that would be great
 
If you could make htat change

Ok the code is now
Screen Shot 2021-01-11 at 12.18.54 PM.png


I did change out my PU resistor from 4.7K to 10K to see if that would help and interesting in that it was running for a long time without a failure. Ill keep it running and report back.
 
I did change out my PU resistor from 4.7K to 10K to see if that would help and interesting in that it was running for a long time without a failure.
That's not intuitive - I can see using a stronger pull-up (lower resistance value) but not the other way around.
 
That's not intuitive - I can see using a stronger pull-up (lower resistance value) but not the other way around.

i am a serious NOOB when it comes to these electronics projects but learning fast. I'll keep it running and see what happens. maybe the 4k7 resistor was not making good contact in my breadboard and when I switched out it was installed more firmly. If it doesnt crash today, I'll put the 4k7 back in and see if it works with that one as well.
 
Ill keep it running and report back

here is the error log

2021-01-11 13:14:44 RPINTS: Unable to Run 1Wire Temperature
Exception in thread Thread-14:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/var/www/html/python/FlowMonitor.py", line 745, in run
traceback.print_tb(exc_traceback, limit=1, file=sys.stdout)
NameError: global name 'exc_traceback' is not defined

Perhaps I didnt update the code properlywith that second error message.
 
Perhaps I didnt update the code properlywith that second error message.
you need to remove the trace_back.print_tb line. you removed the definition for exc_traceback

should look like (log can be used instead of debug)
1610400422330.png
 
Just a little update: I am switching name registrars, DNS and web hosts so I am SURE I will screw that up somewhere. :p

If you notice any issues getting to any of the hosted or DNS options (install.rpints.com goes through there), post here.
 
I did a full update and it’s running the updated code from commit d23029 today but I don’t get any further detail in /var/log/rpints.log.

pi@beer:~ $ tail -f /var/log/rpints.log
2021-01-11 19:17:16 RPINTS: starting WS server
2021-01-11 19:17:16 RPINTS: starting device monitors...
2021-01-11 19:17:17 RPINTS: starting command server
2021-01-11 19:17:17 RPINTS: starting fan control
2021-01-11 19:17:17 RPINTS: Fan Control fanControl1 is Running
2021-01-11 19:17:17 RPINTS: Not Configured to run Fan
2021-01-11 19:17:18 RPINTS: Motion Detector MD-montion is Running
2021-01-11 19:17:18 RPINTS: 1Wire Temperature Thread 1 is Running
2021-01-11 19:17:19 RPINTS: RFID Reader RFID-default is Running
2021-01-11 19:17:45 RPINTS: Unable to Run 1Wire Temperature
 
Feature idea: provide an RPI GPIO output to turn on tower or coffin lighting when the PIR fires.
It'd have to be buffered, but that would be on the user.
Polarity control would be a bonus, could save a transistor and reduce aggravation ;)

Cheers!
 
d23029 today but I don’t get any further detail in /var/log/rpints.log.
did you make sure the config.py has debug enabled?
config['flowmon.debug' ] = True


Or change the debug lines (748-749) to log in FlowMonitor.py?
 
did you make sure the config.py has debug enabled?
config['flowmon.debug' ] = True

here is my current config setting
config['flowmon.debug' ] = True

Or change the debug lines (748-749) to log in FlowMonitor.py?

And the flowmon code

except Exception, e:
log("Unable to Run 1Wire Temperature")
debug("1Wire Temperature: " +str(e))
debug(traceback.format_exc())
return



So looks like I changed it in both. Do I need to completely restart the pi machine or just restart the flow monitor to loan the new code?
 
Ever since I installed flow meters back in 2014 I've felt compelled to sync up my baseline kegs so they kick within a day of each other. This obsession has the up side wrt reloading freshies and cleaning kicked kegs being bit easier as they get done in one fell swoop.

All four kegs kicked with one pour left. I could tweak my tick count a teensy bit but then again I tend not to use the most accurate weight vs volume calculation when filling. An HBT member cranked out a simple spreadsheet that is more accurate but I keep forgetting to use the darned thing ;)

Tap list at 3AM this morning...

taplist_12jan2021_01.jpg


...and now.

taplist_12jan2021_02.jpg


Game On! :D

Cheers!
 
restart just the flomonitor service to load new code


thats what I figured but wanted to double check I am not sure if my connections are causing errors in the data that is causing the 1wire code to throw an error. I rechecked them but will work on conecting the probe to female connectors that I Can connect directly to the PI to eliminate the breadboard connections to see if that eliminates the problem. I dont get further error records in the /var/log/rpints.log file and confirmed I am running the following code.

Screen Shot 2021-01-12 at 3.42.15 PM.png


I have been able to get the flowmeter, RFID and PIR working and will implement my valves when amazon delivers.

If I cant figure this out perhaps I add a cron job that will automatically restart flowmon periodically or if I can improve my programming skills , read the log file and if it receives a Unable to Run 1Wire Temperature message automatically restart the flow mon.

I am super happy to have gotten this far. Thanks for everyones help and putting out a really cool program. I know its a massive amout of work and wish I was more skilled in linux/pythom/php to help out.
 
dont get further error records in the /var/log/rpints.log file


So i changed all lines in flowmonitor to log under the temp to log

Screen Shot 2021-01-12 at 4.29.41 PM.png


I got the following error

Traceback (most recent call last): File "/var/www/html/python/FlowMonitor.py", line 727, in run temp = self.get_temp(device) File "/var/www/html/python/FlowMonitor.py", line 693, in get_temp status = lines[0][-4:-1] IndexError: list index out of range
 
Last edited:
I got the following error

Traceback (most recent call last): File "/var/www/html/python/FlowMonitor.py", line 727, in run temp = self.get_temp(device) File "/var/www/html/python/FlowMonitor.py", line 693, in get_temp status = lines[0][-4:-1] IndexError: list index out of range
that's what I needed. It appears the file is empty on some of the reads, probably when the probe is updating it

if we add
if len(lines) <= 0:
return None

to line 692 then this shouldn't happen again. I have committed that to github
 
After several reinstalls and tweaking of the settings i am unable to fix the issue where the amount subtracted from the keg after a pour is vastly different from what registers as a pour in the "pour history". (I am using the metric system). I have to choose if i want the keg on screen to be empty when i know it's 3/4 full and have correct readings in the pour history. Or if I want alot smaller "pours" in the history and a correct amount left in the keg. I have therefore decided to switch to imperial units so that I don't have to deal with this conversion bug :p
 
RandR+, My temp probe ran all day with no issues so looks like your latest comit fixed my problem. Thanks so much


I have set up a simply python script t send an SMS message and was thinking about using that to send an SMS whenever there was a pour. This is so I can keep track of the kegerator with my kids.

I build the sms solution using twillio and these instructions. super easy. So I have a simple script that will accept two arguments, the tap and how much was poured. To run it I was thinking of putting the following command into the rpints

execfile('send.py TAP Ounces') to run the send.py script using the two arguments, TAP and ounces

I am a noob when it comes to python. Any help in pointing me to where i could include this command in the rpints code an what are the variable names for the tap and the volumn of the pour would be really helpful.

Thanks
 
Hey everyone, I was hoping that someone could help me install this program onto the 3B+ that was just delivered today. I was scrolling through some pages and honestly got kind of lost in it all. I was initially following the instructions on the website but seems like that is outdated. I'm just trying to get it set up basically at this point and then I intend on connecting my Plaato Kegs to the system.

Thanks!
 
Greetings, @Nella! And welcome to the forums :mug:

The original raspberrypints.com installation process has been rendered functionally inert due to the influences of time - and the evolution of the Raspbian OS packages released over the intervening years since that page was drawn up in 2014. As an original adopter and supporter there has been some sadness.

BUT! Very fortunately there are updated alternatives, and the best supported kit has been put together by HBT member @RandR+ and is dead simple to kick off an installation.

To wit: open a terminal session and enter this command:

Code:
curl -L install.rpints.com | sudo bash

Wrt to the basic installation, everything will magically be done for you :)
Then you can go through the configuration of all the features and capabilities as desired...

Cheers!
 
Well shut my mouth 😅 looks like I owe a couple people a beer. I spent a few hours last night trying different things and that got me rolling in like 30 minutes. Now just to get it all customized. Thanks much!
 
I am already powering off a separate power supply based on other recommendations in this thread, I am also on my 3rd USB cable. I can try that again.

Any suggestions on proven brands of USB cables?

I have been using a separate power supply for the Uno since day 1.

I am now on my 6th USB cable and things will work for a few hours (Tx/Rx lights flashing) and then the lights are just on solid and no pours will register. I have tried swapping and using all 4 USB ports on the RP as well. Same results.

@RandR+ Is there anything else that I can try? It is basically not functional like this.
 
Is there anything else that I can try? It is basically not functional like this.
if you restart the flowmon service without changing anything, does it start working? Im running into something similar with mine where the shield will just stop, I haven't tracked it down yet.
 
execfile('send.py TAP Ounces') to run the send.py script using the two arguments, TAP and ounces

I am a noob when it comes to python. Any help in pointing me to where i could include this command in the rpints code an what are the variable names for the tap and the volumn of the pour would be really helpful.
The pour for python is in /python/FlowMonitor.py ~line 337
1610645773087.png


but that really just calls a PHP script that does the conversion and saves it into the database.

in admin/includes/managers/pour_manager.php you could add these lines to about line 253

$command = escapeshellcmd('send.py '.$tapId.' '.$amount);
$output = shell_exec($command);

1610645982157.png
 
conversion bug
let me test something, I think it may have to do with how I subtract the amount from the keg, I don't compare keg unit to pour unit. So if the keg unit is Imperial but pours are in Metric then this would happen

1610646070436.png
 
let me test something, I think it may have to do with how I subtract the amount from the keg, I don't compare keg unit to pour unit. So if the keg unit is Imperial but pours are in Metric then this would happen

View attachment 714324
Yes please :) If you don't fix it though it won't be a huge issue. A good opportunity to learn imperial units 😂 I am back at my hometown at the moment as my University is closed down due to Covid. The kegerator is back at the apartment by the Uni so i won't be able to help you troubleshoot at the moment though. To replicate the issue consistently i have found you need to use metric units, make a pour to calibrate the amount poured and after that the keg and pour amount will be different.
 
if you restart the flowmon service without changing anything, does it start working? Im running into something similar with mine where the shield will just stop, I haven't tracked it down yet.

Restarting via the UI does not work, but running the command sudo /etc/init.d/flowmon restart, did get things going again.

Which is how I was getting around this was to restart the RP before I make a pour IF the Tx/Rx lights were on steady.

It seems every time the R3 is reflashed it gets things going again:

Log after restarting RP or restarting flowmon service

reflashing Arduino via: /usr/share/arduino/hardware/tools/avrdude -C/usr/share/arduino/hardware/tools/avrdude.conf -patmega328p -calamode -P/dev/ttyACM0 -b115200 -D -Uflash:w:/var/www/html//arduino/raspberrypints/raspberrypints.cpp.hex:i

It's too bad that IF this situation happens, to just restart the flowmon service automatically.
 
Log after restarting RP or restarting flowmon service
What is the log before the restart? mine usually shows the last status check time. Im working to look at the serial log to see if the Shield is actually doing anything or if the python is not responding.

It's too bad that IF this situation happens, to just restart the flowmon service automatically.
I want to put in a timer that says if the Shield doesn't send anything in x minutes then restart it.
I believe that the Shield should always check the pi for a status even if it is not used (it really is for RFID but if RFID isn't configured I think it still checks)
 
What is the log before the restart? mine usually shows the last status check time. Im working to look at the serial log to see if the Shield is actually doing anything or if the python is not responding.


I want to put in a timer that says if the Shield doesn't send anything in x minutes then restart it.
I believe that the Shield should always check the pi for a status even if it is not used (it really is for RFID but if RFID isn't configured I think it still checks)

This is the full log between restarts:

2021-01-14 12:20:01 FlowMonitor D giving it a short break to wake up again... 1
2021-01-14 12:20:00 FlowMonitor D resetting alamode to try to force it to listen to us... 1
2021-01-14 12:20:00 PintDispatch D starting setup... 1
2021-01-14 12:19:58 FlowMonitor I Could not import RFID Reader, RFID disabled. Assuming SPI not installed/configured 1
2021-01-14 12:19:58 PintDispatch D valve update: RPU:VALVE:4=0 1
2021-01-14 12:19:58 PintDispatch D valve update: RPU:VALVE:3=0 1
2021-01-14 12:19:58 PintDispatch D valve update: RPU:VALVE:2=0 1
2021-01-14 12:19:58 PintDispatch D valve update: RPU:VALVE:1=0 1
2021-01-14 12:19:58 PintDispatch D valve update: RPU:VALVE:0=0 1
2021-01-14 12:17:46 PintDispatch D valve update: RPU:VALVE:4=0 1
2021-01-14 12:17:46 PintDispatch D valve update: RPU:VALVE:3=0 1
2021-01-14 12:17:46 PintDispatch D valve update: RPU:VALVE:2=0 1
2021-01-14 12:17:46 PintDispatch D valve update: RPU:VALVE:1=0 1
2021-01-14 12:17:46 PintDispatch D valve update: RPU:VALVE:0=0 1
2021-01-14 12:17:45 PintDispatch I Restarting Service 1
2021-01-14 12:17:45 PintDispatch D Requesting Reset of Service 1
2021-01-14 12:17:45 PintDispatch D reconfigure trigger: restartservice 1
2021-01-14 12:16:11 FlowMonitor D Sending Status;N;-1;0;0;0;0;0;0;| 9547
2021-01-13 20:45:12 Arduino D RT L 3 0 104147 103846 301 300 371 100 1
2021-01-13 20:45:12 PintDispatch D count update: RPU:FLOW:3=371:-1 1
2021-01-13 20:45:12 PintDispatch D restarting fan timer after pour 1
2021-01-13 20:45:11 FlowMonitor D got a pour: P;-1;3;371 1
2021-01-13 20:45:11 FlowMonitor D Sending Status;N;-1;0;0;0;0;0;0;| 15
2021-01-13 20:45:09 FlowMonitor D got a update: U;-1;3;303 1
2021-01-13 20:45:06 FlowMonitor D got a update: U;-1;3;202 1
2021-01-13 20:45:06 FlowMonitor D Sending Status;N;-1;0;0;0;0;0;0;| 338
2021-01-13 20:45:04 FlowMonitor D got a update: U;-1;3;101 1
2021-01-13 20:43:27 FlowMonitor D listening to Arduino 1
2021-01-13 20:43:27 FlowMonitor D Arduino says: C:5:3:5:7:9:0:0:300:100:30:100:0:0:1| 1
2021-01-13 20:43:27 FlowMonitor D Waiting for Config Response 1
2021-01-13 20:43:27 FlowMonitor D Arduino config, about to send: C:5:3:5:7:9:0:0:300:100:30:100:0:0:1| 1
2021-01-13 20:43:27 FlowMonitor D getting config data for Arduino 1
2021-01-13 20:43:27 FlowMonitor D Arduino alive... 1
2021-01-13 20:43:27 FlowMonitor D Adding 28-011927f10bdc Temp[6.9] low:0.0 high:212.0 1
2021-01-13 20:43:25 FlowMonitor D waiting for Arduino to come alive 1
2021-01-13 20:43:25 FlowMonitor I 1Wire Temperature Thread 1 is Running 1
2021-01-13 20:41:29 FlowMonitor D Sending Status;N;-1;0;0;0;0;0;0;| 1875
2021-01-13 20:33:17 PintDispatch I Not Configured to run Fan 1
2021-01-13 20:33:17 PintDispatch I Fan Control fanControl1 is Running 1
2021-01-13 20:33:17 FlowMonitor D Creating Serial Listener 1
2021-01-13 20:33:17 PintDispatch I starting fan control 1
2021-01-13 20:33:17 FlowMonitor D resetting Arduino 1
2021-01-13 20:33:17 PintDispatch I starting command server 1
2021-01-13 20:33:17 PintDispatch I starting device monitors... 1
2021-01-13 20:33:17 PintDispatch I starting WS server
 
To replicate the issue consistently i have found you need to use metric units, make a pour to calibrate the amount poured and after that the keg and pour amount will be different.
Yep that was it. I fixed the issue now (its in github if you update)

This only presents itself if the keg volume is set when units are one unit and the tap count is change when the units are the other. But I think keg units are loaded as imperial so if you don't change the volume from the test data to do the calibration then this would present itself after you changed units and calibrated the tap. If you change the units then change the volume of the keg the keg takes the new units not the old one
 
2021-01-14 12:19:58 PintDispatch D valve update: RPU:VALVE:0=0 1
..
2021-01-14 12:17:46 PintDispatch D valve update: RPU:VALVE:4=0 1
2021-01-14 12:16:11 FlowMonitor D Sending Status;N;-1;0;0;0;0;0;0;| 9547
FlowMonitor D Sending Status;N;-1;0;0;0;0;0;0;| 9547

9547 is the number of times that message has been logged since a different message was logged, on the webpage Log this number should be increasing every few seconds.

It looks like you noticed it wasn't working and tried to restart from the UI at 12:17:46 a minute and half after the status stopped logging. This tells me that the python was responsive to the UI and not completely frozen, but that is separated from the python that talks to the shield.
This matches what I am seeing locally.

I can see that UI restart did trigger it to review its valves but the part talks to the shield didn't start logging. I tested with my setup working normally and it acted correctly, which makes me wondering if the communications was stopped and the UI restart didn't kill it like the restart from the terminal does.

It looks like at 12:19:58 the restart happened again which I am guessing was you running the /etc/init.d/flowmon restart command
 
Back
Top