mailman3 digest sending questions and also adding docker to the mix
So I have been down the digest rabbit hole.
So to confirm my assumptions/findings: Digest size threshold---- means when the total size of held messages hits this setting, a digest is sent Digest Volume Frequency. ---- specifies when the digest volume number gets incremented for digest messages, IT DOES NOT send out digests based on the setting, daily, weekly ...
So what does the GUI setting "Send Digest Periodically yes no" do? how periodically does it send digests, if this is set to yes?
If I want to send a digest out for a list every day, or every week, how do I set that, especially in the docker environment? Is this something that can be configured in the GUI and configured by each of my list admins? I found that ”'mailman digests --periodic' via cron” should be set in googling, but does that mean I have to do a cron job for any list that wants a scheduled digest sent?
My use case is, that I have a list admin who set a size threshold, but regardless of that, they also want their list digest sent out daily, they thought it was the "Digest Volume Frequency" setting but that is not correct. However in their testing they are not getting daily digest, they are getting digests only when the threshold is reached, BUT they have "Send Digest Periodically" set to "yes" and "Enable Digests" is set to "yes"
On 4/13/22 10:04, bob B via Mailman-users wrote:
So to confirm my assumptions/findings: Digest size threshold---- means when the total size of held messages hits this setting, a digest is sent Digest Volume Frequency. ---- specifies when the digest volume number gets incremented for digest messages, IT DOES NOT send out digests based on the setting, daily, weekly ...
Correct.
So what does the GUI setting "Send Digest Periodically yes no" do? how periodically does it send digests, if this is set to yes?
If I want to send a digest out for a list every day, or every week, how do I set that, especially in the docker environment? Is this something that can be configured in the GUI and configured by each of my list admins? I found that ”'mailman digests --periodic' via cron” should be set in googling, but does that mean I have to do a cron job for any list that wants a scheduled digest sent?
To send digests periodically regardless of size, you need to run
mailman digests --periodic
on the schedule you want. This will send
the accumulated digest if any for every list that is configured to Send
Digest Periodically.
Normally, this is run daily via cron.
If you want a different schedule for different lists you need to run
mailman digests --list list@example.com --periodic
per list on its own
schedule.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
Thanks, so if do not do a cronjob how often would mailman send out digests? is it daily or ????? it sounds like it is daily, But is that setup in the Docker Environment, it appears not to be? if not how do I set that up in the Docker environment?
I thought docker mailman cron jobs run from the "docker-web" container in the file "/opt/mailman-web/uwsgi.ini" but the "docker-web" container can not run the command "mailman" command
Do I do this in cron in the "docker-core" container or do I run it from cron on my docker host as an entry like
0 1 *** 'docker exec -it mailman-core mailman digests --list list@example.com --periodic'
No worries, I hoping Abhilash will respond to the docker,
But for non docker installs I assume that it sends out digest daily? when "Send Digest Periodically " is set to yes, is that correct?
On 4/13/22 15:35, bob B via Mailman-users wrote:
No worries, I hoping Abhilash will respond to the docker,
But for non docker installs I assume that it sends out digest daily? when "Send Digest Periodically " is set to yes, is that correct?
Periodic digests are sent when and only when mailman digests --periodic
is run either via cron or manually.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
On Wed, Apr 13, 2022, at 3:35 PM, bob B via Mailman-users wrote:
No worries, I hoping Abhilash will respond to the docker,
But for non docker installs I assume that it sends out digest daily?
when "Send Digest Periodically " is set to yes, is that correct?
Docker install currently doesn’t run routine cron jobs in Core like it does in Hyperkitty.
Part of the problem is that there is no engine to run the cron jobs in the container. I _should_ figure out a way to do that using supervisord or something similar inside the image, but that is still not there yet.
There is https://github.com/maxking/docker-mailman/issues/420 which could use some help with fixes or even simply documentation udpates.
Mailman-users mailing list -- mailman-users@mailman3.org To unsubscribe send an email to mailman-users-leave@mailman3.org https://lists.mailman3.org/mailman3/lists/mailman-users.mailman3.org/
-- thanks, Abhilash Raj (maxking)
Abhilash,
Thanks, also do you know of any other Cron jobs that I should also set up outside the docker containers?
On Thu, Apr 14, 2022, at 8:15 AM, bob B via Mailman-users wrote:
Thanks, also do you know of any other Cron jobs that I should also set up outside the docker containers?
Not a cron job, but you'll want to set up log rotation. Here is my /etc/logrotate.d/mm3.conf file:
############################################################### # # Rotate Mailman3 Logs (inside Docker) # ############################################################### /opt/mailman/core/var/logs/*.log { weekly rotate 26 compress delaycompress missingok lastaction docker exec -u mailman mailman-core mailman reopen endscript }
-Seth
Bob,
I am running with Docker, and here is my cron line:
0 5 * * * /usr/bin/docker exec -u mailman mailman-core mailman digests -p
The "-u mailman" is important - you should use it 100% of the time, unless you specifically need root access. -i mean interactive, and -t requests a tty, neither of which you need here.
Seth
On Apr 13, 2022, at 3:54 PM, bob B via Mailman-users <mailman-users@mailman3.org> wrote:
Thanks, so if do not do a cronjob how often would mailman send out digests? is it daily or ????? it sounds like it is daily, But is that setup in the Docker Environment, it appears not to be? if not how do I set that up in the Docker environment?
I thought docker mailman cron jobs run from the "docker-web" container in the file "/opt/mailman-web/uwsgi.ini" but the "docker-web" container can not run the command "mailman" command
Do I do this in cron in the "docker-core" container or do I run it from cron on my docker host as an entry like
0 1 *** 'docker exec -it mailman-core mailman digests --list list@example.com --periodic'
Mailman-users mailing list -- mailman-users@mailman3.org To unsubscribe send an email to mailman-users-leave@mailman3.org https://lists.mailman3.org/mailman3/lists/mailman-users.mailman3.org/
Thanks,
What cron do you run it out of, root? I assume it does not matter as long as the cron user has docker permissions, so the corn user does not matter cause the -u will run the command as the mailman user in the container.
On Apr 14, 2022, at 8:14 AM, bob B via Mailman-users <mailman-users@mailman3.org> wrote:
Thanks,
What cron do you run it out of, root? I assume it does not matter as long as the cron user has docker permissions, so the corn user does not matter cause the -u will run the command as the mailman user in the container.
Correct - the cron job needs to run as a user with docker permissions.
That is the only cron job I have (except for backup scripts).
Seth
On 4/14/22 05:41, Seth Seeger wrote:
That is the only cron job I have (except for backup scripts).
You may also want mailman notify
to notify list owners/moderators of
pending moderator requests.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
Thanks,
I just did a test and send a message to a list I was not a member of, and the owner of the list got the message about needing to approve it. and the sender go the message that it had to be approved.
So it looks like that piece does work in the docker environment? or does "Mailman notify" do anything else?
On 4/14/22 10:08, bob B via Mailman-users wrote:
So it looks like that piece does work in the docker environment? or does "Mailman notify" do anything else?
mailman notify
sends reminder notifications about moderator requests
that still haven't been handled.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
Thanks, so on my test system I never got a notification for a held message, and on production, I only go it once,
So it looks like for docker you should do a cron to run at least these commands from the docker host
00 6 * * * /usr/bin/docker exec -u mailman mailman-core mailman digests -p 00 5 * * * /usr/bin/docker exec -u mailman mailman-core mailman notify
I've been having the same problem since late January, 2024. I'm the administrator for a list that is hosted by mailmanlists.net; they have been trying to fix it without success. My understanding is that "yes" to Send Digest Periodically is supposed to send digests daily even if the threshold size is not reached. This isn't happening. There doesn't seem to be any option to change the periodicity from daily to, say, weekly. Would turning off the "periodically" option and then turning it back on reset something? Or turning off digests altogether temporarily?
Hi Steve,
This is probably something best escalated by the mailmanlists.net admin, since they'll have access to the install configuration.
My initial thought is that the system administrator may not have set up the necessary cron job for digests, as described here: https://docs.mailman3.org/en/latest/config-core.html#configuring-cron-jobs
The frequency with which is is run is the "periodically" with which a digest is sent in Mailman3. (This could be clearer, perhaps.)
Regards, --Jered
----- On Apr 16, 2024, at 6:53 PM, Steve Brown drstephenlbrown@gmail.com wrote:
I've been having the same problem since late January, 2024. I'm the administrator for a list that is hosted by mailmanlists.net; they have been trying to fix it without success. My understanding is that "yes" to Send Digest Periodically is supposed to send digests daily even if the threshold size is not reached. This isn't happening. There doesn't seem to be any option to change the periodicity from daily to, say, weekly. Would turning off the "periodically" option and then turning it back on reset something? Or turning off digests altogether temporarily?
Mailman-users mailing list -- mailman-users@mailman3.org To unsubscribe send an email to mailman-users-leave@mailman3.org https://lists.mailman3.org/mailman3/lists/mailman-users.mailman3.org/ Archived at: https://lists.mailman3.org/archives/list/mailman-users@mailman3.org/message/...
This message sent to jered@convivian.com
Steve Brown wrote on 2024-04-16 15:53:
My understanding is that "yes" to Send Digest Periodically is supposed to send digests daily even if the threshold size is not reached.
Hi Steve,
As Jered said, it's probably to do with the cron
job setting.
User mailman
should have a crontab entry something like this:
@daily /opt/mailman/venv/bin/mailman digests --periodic
Running mailman digests -h
seems to indicate that should work if done
daily, but if there's a problem (bug?), then maybe an entry with
mailman digests --list $list_name --send
would force the digests to be sent?
mailman digests -h
-l, --list list Operate on this mailing list. Multiple --list
options can be given. The argument can either be a
List-ID or a fully qualified list name. Without this
option, operate on the digests for all mailing lists.
-s, --send Send any collected digests right now, even if the
size threshold has not yet been met.
...
-v, --verbose Print some additional status.
-p, --periodic Send any collected digests for the List only if their
digest_send_periodic is set to True.
rb
participants (7)
-
Abhilash Raj
-
bob B
-
Jered Floyd
-
Mark Sapiro
-
Ron / BCLUG
-
Seth Seeger
-
Steve Brown