Recently I have been trying to debug some problems with cloud-init in
the alpha versions of cloud images for CentOS 7 and Fedora 21. What I
have found is that it’s not so straight forward to figure out how to set
up debug logging.
The defaults (defined in
/etc/cloud/cloud.cfg.d/05_logging.cfg )
for some reason don’t really capture the debug output in
/var/log/cloud-init.log
. Luckily, though, on systemd
based systems
we can get most of that output by using journalctl
. There are several
services releated to cloud-init and if you want to get the output from
all of them you can just use wildcard matching in journalctl
(freshly
added in
ea18a4b
) like so:
\
[root@f21test ~]# journalctl --unit cloud-*
...debug...debug...blah...blah
This worked great in Fedora 21, but in CentOS/RHEL 7 this actually won’t
work because wildcard matching is too new. As a result I found another
way to get the same output. It just so happens that the services all use
the same executable (/usr/bin/cloud-init
) so I was able to use that as
a trigger:
\
[root@c7test ~]# journalctl /usr/bin/cloud-init
...debug...debug...blah...blah
I hope others can find this useful when debugging cloud-init.
Cheers,
Dusty