07.计算Nova→3.场景学习→1.看懂openstack日志
- 对于非devstack安装,日志一般放在 /var/log/xxx/ 目录下。比如 Nova 放在 /var/log/nova/ 下,Glance 放在/var/log/glance下
- OpenStack 的日志格式都是统一的:<时间戳><日志等级><代码模块><Request ID><日志内容><源代码位置>
- 时间戳:日志记录的时间,包括 年 月 日 时 分 秒 毫秒
- 日志等级:有debug<info<warn<Error等,等级由低到高:
- Debug;这个级别的信息,可以随意的使用,任何觉得有利于在调试时更详细的了解系统运行状态的东东,比如变量的值等等
- Info:重要,输出信息:用来反馈系统的当前状态给最终用户的
- warn, 可修复,系统可继续运行下去;
- Error, 可修复,但无法确定系统会正常的工作下去;
- 代码模块:当前运行的模块
- Request ID:日志会记录连续不同的操作,为了便于区分和增加可读性,每个操作都被分配唯一的Request ID,便于查找
- 日志内容:这是日志的主体,记录当前正在执行的操作和结果等重要信息
- 源代码位置:日志代码的位置,包括方法名称,源代码文件的目录位置和行号。这一项不是所有日志都有
- 例子:
1 2 3 4 5 6
2015-12-10 20:46:49.566 DEBUG nova.virt.libvirt.config [req-5c973fff-e9ba-4317-bfd9-76678cc96584 None None] Generated XML ('<cpu>\n <arch>x86_64</arch>\n <model>Westmere</model>\n <vendor>Intel</vendor>\n <topology sockets="2" cores="3" threads="1"/>\n <feature name="avx"/>\n <feature name="ds"/>\n <feature name="ht"/>\n <feature name="hypervisor"/>\n <feature name="osxsave"/>\n <feature name="pclmuldq"/>\n <feature name="rdtscp"/>\n <feature name="ss"/>\n <feature name="vme"/>\n <feature name="xsave"/>\n</cpu>\n',) to_xml /opt/stack/nova/nova/virt/libvirt/config.py:82
- 代码模块是 nova.virt.libvirt.config,由此可知应该是 Hypervisor Libvirt 相关的操作
- 日志内容是生成 XML:Generated XML
- 如果要跟踪源代码,可以到 /opt/stack/nova/nova/virt/libvirt/config.py 的 82 行,方法是 to_xml