On 10.04.2024 22:04, Brian Reichert wrote:
On Wed, Apr 10, 2024 at 09:06:09AM -0600, Dan Nicholson wrote:
On Wed, Apr 10, 2024 at 8:50???AM Brian Reichert <reichert@xxxxxxxxxxx> wrote:
My current service file:
[Unit]
Description=Activities after logrotation
Requires=logrotate.service
Wants=logrotate.service
After=logrotate.service
[Service]
#Type=oneshot
Type=simple
ExecStart=/usr/bin/logger 'XXX post log rotation'
[Install]
WantedBy=timers.target
The critical part is WantedBy=logrotate.service. In other words, when
logrotate.service is activated, you want it to also activate your
service. Then After=logrotate.service above will ensure your service
starts after it completes. The Requires and Wants above are
conflicting. You only want one or the other, but I'd probably put it
as Requires=logrotate.service. That way your unit won't start if
logrotate.service fails.
Thanks to you and <grawity@xxxxxxxxx> for your advice. I think I've
correctly incorporated your suggestions, but I still can't seem to get
things to work.
Perhaps my method of testing is flawed.
My current service:
[Unit]
Description=Activities after logrotation
Requires=logrotate.service
[Service]
Type=simple
ExecStart=/usr/bin/logger 'XXX post log rotation'
[Install]
WantedBy=logrotate.service
Links in [Install] section are created by "systemctl enable".
I tried, variously, to no apparent effect:
systemctl restart logrotate.timer
systemctl start logrotate.service
How should I be testing this?