日志文件查看
以nova组件为例进行说明。
在老版本的devstack下,日志记录再/opt/stack/log下,或者非devstack的openstack下使用/var/log/nova/xxx.log文件进行查看,但是新版本的devstack使用journalctl来代替日志的查看。
#journalctl -f --unit devstack@n-cpu.service
//相当于之前的# tail -f /var/log/nova/nova-compute.log
//以此类推,查看不同服务的log使用不同的service.
#journalctl -a --unit devstack@n-cpu.service | grep XXX
//相当于之前的 # cat /var/log/nova/nova-compute.log | grep XXX
//XXX = ERROR、INFO、WARNING...
journalctl 命令
- journalctl -f :要使用 journalctl 跟踪日志文件 (读取最新条目), 只需在命令后加参数 “-f” 即可。
- 可以通过-n 或者 --lines=参数来指定显示的行数大小。
- -r参数表示反序输出,从最新的日志到旧的日志。
- 如果不带参数,journalctl将显示所有的信息。 (从旧到新)
- journalctl可以显示指定时间段内发生的事件日志。 通过since和until 参数来实现。其中日期的格式是“YYYY-MM-DD HH:MM:SS”。 比如:journalctl --since 1 hour ago ,查看1小时前到现在的日志 journalctl --since “2016-08-04 20:00:00” --until “2016-08-04 20:15:00” 查看8月4日晚上的日志
- 显示与特定系统引导有关的信息:journalctl -b 、journalctl --list-boots
- 显示系统日志信息,命令 “journalctl -k” 和 “journalctl --dmesg” 用来显示系统的内核日志信息。
- 永久保存journalctl日志,默认journalctl的日志都是保存到内存中。要保存到文件,只需创建/var/log/journal目录,重启journald服务即可。
# mkdir -p /var/log/journal
# systemctl restart systemd-journald