Checking for Heartbeat

First, thanks to Mark Sapiro for the great reply on Multiple List Pending Requests.
I host with jumpline.com, which generally does a good job with me. The Mailman installation is pretty good, but for some reason I can't track down, Mailman keeps going belly-up. Jumpline customer support doesn't know why. I have to stop it to turn off whatever qrunners are running and restart it. I don't mind doing that now and then. It doesn't happen that often.
Here's the problem. My users don't think to tell me when they haven't had any mail from the list for awhile. I just go along thinking all is well until someone tells me, "Hey, Rex. We haven't had any email from the list for a week." I restart and old email mostly catches up.
I have an administrative page for all of my web sites and the various things they do. I am on that page several times each day. I would like to generate some message when Mailman isn't working, something I would see there. A lot of the command line scripts seem to work even if Mailman is not running. What can I use to check to see if it is alive?
Rex

Rex Goode wrote:
I'm guessing you have a VPS or similar hosting arrangement where you actually have access to the Maulman installation.
When Mailman 'dies' are one or more qrunners missing? If so, look in Mailman's error and qrunner logs to try to find out why. If not, maybe there is a lock issue of some sort. See the FAQ at <http://wiki.list.org/x/A4E9>.
I suggest you look at the mmdsr script. I don't know what you have available in your installation, but if you have a Mailman contrib/ directory, you'll find it there. If not, go to <http://bazaar.launchpad.net/~mailman-coders/mailman/2.1/files/head%3A/contri...> where you can download mmdsr and README.mmdsr.
mmdsr is designed to be run by cron at 23:59 daily and mail you a report summarizing Mailman's logs, queues, etc. This is very helpful in spotting problems.
If mailmanctl and some qrunners are running when mailman is not working, and you want to check right now, you can look at
find /path/to/qfiles -print -name \*.pck
to see if any queues are backed up, and you can do
ps -u mailman --no-headers | wc -l
which should return '9' in a standard installation (mailmanctl and 8 qrunners).
You could incorporate one of these or something similar in your administrative page.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

On 27-Nov-2009, at 08:56, Mark Sapiro wrote:
<http://bazaar.launchpad.net/~mailman-coders/mailman/2.1/files/head%3A/contri...> where you can download mmdsr and README.mmdsr
Hmm.. the readme and internal docs where not that useful.
# Arguments for your mktemp command to specify directory and/or create file. # For example, HPUX mktemp requires "-c"; FreeBSD doesn't accept "-p <dir>". ############################################################################### TMPDIR="-p /tmp"
OK, since freeBSD doesn't like the -p option, what should this be? setting it to just "/tmp" generates an error. Setting it to -d /tmp/mmdsr also generates the same basic errors. Yes, the script is running as root.
# mmdsr mktemp: mkstemp failed on /tmp: File exists mktemp: mkstemp failed on /tmp: File exists /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory
The script then sits there for far long than a minute seemingly doing nothing. (I know it has a sleep 60 in it because it's intended to run at 23:59, but that does seem an odd way to go to me). Still, wanting to see the output it generated I ran it, but it seems to just stall.
-- "Conservatives want live babies so they can raise them to be dead soldiers" ~Carlin

LuKreme wrote:
The equivalent option in FreeBSD is "-t /tmp", at least according to <http://www.gsp.com/cgi-bin/man.cgi?section=1&topic=mktemp>.
(I know it has a sleep 60 in it because it's intended to run at 23:59, but that does seem an odd way to go to me).
It runs at 23:59 and sleeps for a minute after getting the current date to use in filtering the logs. It sleeps to get the last minute in the logs, and it gets the date before midnite so it doesn't have to figure out the correct date for 'yesterday'. Granted, it could just run at midnight and use the "-d yesterday" option for the date command, but a) I didn't write that part; b) I don't know if "-d yesterday" or equivalent is universally available in implementations of date, and c) the impact of a change at this point on existing users makes such a change problematic.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

LuKreme wrote:
I have changed the comment to
# Arguments for your mktemp command to specify directory and/or create file. # For example, HPUX mktemp requires "-c -d <dir>"; FreeBSD requires "-t <dir>".
Hopefully, that will be more clear. I would prefer not to have this setting at all, but there needs to be something because without the '-c' option HPUX won't create the file, and none of the others accept '-c'.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

Rex Goode wrote:
I'm guessing you have a VPS or similar hosting arrangement where you actually have access to the Maulman installation.
When Mailman 'dies' are one or more qrunners missing? If so, look in Mailman's error and qrunner logs to try to find out why. If not, maybe there is a lock issue of some sort. See the FAQ at <http://wiki.list.org/x/A4E9>.
I suggest you look at the mmdsr script. I don't know what you have available in your installation, but if you have a Mailman contrib/ directory, you'll find it there. If not, go to <http://bazaar.launchpad.net/~mailman-coders/mailman/2.1/files/head%3A/contri...> where you can download mmdsr and README.mmdsr.
mmdsr is designed to be run by cron at 23:59 daily and mail you a report summarizing Mailman's logs, queues, etc. This is very helpful in spotting problems.
If mailmanctl and some qrunners are running when mailman is not working, and you want to check right now, you can look at
find /path/to/qfiles -print -name \*.pck
to see if any queues are backed up, and you can do
ps -u mailman --no-headers | wc -l
which should return '9' in a standard installation (mailmanctl and 8 qrunners).
You could incorporate one of these or something similar in your administrative page.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

On 27-Nov-2009, at 08:56, Mark Sapiro wrote:
<http://bazaar.launchpad.net/~mailman-coders/mailman/2.1/files/head%3A/contri...> where you can download mmdsr and README.mmdsr
Hmm.. the readme and internal docs where not that useful.
# Arguments for your mktemp command to specify directory and/or create file. # For example, HPUX mktemp requires "-c"; FreeBSD doesn't accept "-p <dir>". ############################################################################### TMPDIR="-p /tmp"
OK, since freeBSD doesn't like the -p option, what should this be? setting it to just "/tmp" generates an error. Setting it to -d /tmp/mmdsr also generates the same basic errors. Yes, the script is running as root.
# mmdsr mktemp: mkstemp failed on /tmp: File exists mktemp: mkstemp failed on /tmp: File exists /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory /usr/local/bin/mmdsr: cannot create : No such file or directory
The script then sits there for far long than a minute seemingly doing nothing. (I know it has a sleep 60 in it because it's intended to run at 23:59, but that does seem an odd way to go to me). Still, wanting to see the output it generated I ran it, but it seems to just stall.
-- "Conservatives want live babies so they can raise them to be dead soldiers" ~Carlin

LuKreme wrote:
The equivalent option in FreeBSD is "-t /tmp", at least according to <http://www.gsp.com/cgi-bin/man.cgi?section=1&topic=mktemp>.
(I know it has a sleep 60 in it because it's intended to run at 23:59, but that does seem an odd way to go to me).
It runs at 23:59 and sleeps for a minute after getting the current date to use in filtering the logs. It sleeps to get the last minute in the logs, and it gets the date before midnite so it doesn't have to figure out the correct date for 'yesterday'. Granted, it could just run at midnight and use the "-d yesterday" option for the date command, but a) I didn't write that part; b) I don't know if "-d yesterday" or equivalent is universally available in implementations of date, and c) the impact of a change at this point on existing users makes such a change problematic.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

LuKreme wrote:
I have changed the comment to
# Arguments for your mktemp command to specify directory and/or create file. # For example, HPUX mktemp requires "-c -d <dir>"; FreeBSD requires "-t <dir>".
Hopefully, that will be more clear. I would prefer not to have this setting at all, but there needs to be something because without the '-c' option HPUX won't create the file, and none of the others accept '-c'.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (3)
-
LuKreme
-
Mark Sapiro
-
Rex Goode