Openstack 无法从服务(nova、neutron 等)中找到日志

Openstack can't find logs from services (nova, neutron etc.)

我在 Ubuntu 18.04 和 20.04 机器(不止一台)上使用 devstack 安装了 Openstack Ussuri 和 Wallaby(两个不同的虚拟机)。我能够生成实例(使用 openstack server create)并且一切都很好。但是,我希望查看系统日志,它应该位于 /var/logs/<service_name>(根据 this official doc)。然而,我根本没有这样的目录,即使在实例生成时出现错误。

我已经检查过,在 nova.conf 我有:debug = True,我确实从 RabbitMQ、OpenVSwitch 等获取日志,但不是从任何 openstack 服务获取的。

我什至在整个文件系统中搜索了一个包含 novalog 的文件,但什么也没有。

您仍然可以将服务配置为记录到文件,但请记住,您需要轮换日志,否则它们最终会填满磁盘。

要启用日志,只需在服务配置的 [DEFAULT] 部分下添加 log_file(例如 /etc/nova/nova.conf)。

[DEFAULT]
log_file = /opt/stack/logs/nova.log

记录了配置选项 here

您也可以直接从日志中读取日志,有很多库可以帮助完成此操作。一个更好的选择可能是让 journald 将日志转发到另一个服务(例如 rsyslog、splunk)并将它们用于您的 post 处理。