This process could be used to set up the tcmu-runner
to log to a file much like other ceph daemons
- create /etc/tcmu directory
- create /etc/tcmu/tcmu.conf directory with default options
- change dir to /var/log
- change log level to 4
- add -v /etc/tcmu:/etc/tcmu to tcmu-runner container podman line in unit.run
In order to support this (mostly for debugging) we should
add tcmu-runner to the logrotate config
Fixes: https://tracker.ceph.com/issues/61571
Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit
d5d40e07cae8a1d6a94029c4354d146b0baa3971)
first child (bash), but that isn't the ceph daemon. This is simpler and
should be harmless.
"""
+ targets: List[str] = [
+ 'ceph-mon',
+ 'ceph-mgr',
+ 'ceph-mds',
+ 'ceph-osd',
+ 'ceph-fuse',
+ 'radosgw',
+ 'rbd-mirror',
+ 'cephfs-mirror',
+ 'tcmu-runner'
+ ]
+
f.write("""# created by cephadm
/var/log/ceph/%s/*.log {
rotate 7
compress
sharedscripts
postrotate
- killall -q -1 ceph-mon ceph-mgr ceph-mds ceph-osd ceph-fuse radosgw rbd-mirror cephfs-mirror || pkill -1 -x 'ceph-mon|ceph-mgr|ceph-mds|ceph-osd|ceph-fuse|radosgw|rbd-mirror|cephfs-mirror' || true
+ killall -q -1 %s || pkill -1 -x '%s' || true
endscript
missingok
notifempty
su root root
}
-""" % fsid)
+""" % (fsid, ' '.join(targets), '|'.join(targets)))
def get_unit_file(ctx, fsid):