17.5. 日志收集程序

17.5.1. 日志收集程序

Red Hat Virtualization Manager 包括了一个日志收集程序,您可以使用它从 Red Hat Virtualization 环境中收集所需要的日志信息。
日志收集的命令是 engine-log-collector。您需要使用 root 用户身份登录到 Red Hat Virtualization 环境中。engine-log-collector -h 会显示 engine-log-collector 命令的使用信息以及可用的选项。

17.5.2. engine-log-collector 命令的语法

日志采集命令的基本语法:
engine-log-collector [options] list [all, clusters, datacenters]
engine-log-collector [options] collect
这个命令有两个模式:listcollect
  • list 参数会列出主机、集群或数据中心是否附加到了 Red Hat Virtualization Manager。您可以根据所列出的项对收集的日志进行过滤。
  • collect 参数将会从 Red Hat Virtualization Manager 上收集日志。所获得的日志数据被保存在 /tmp/logcollector 目录中。engine-log-collector 命令会为每个日志分配一个特定的文件名。
除非被其它参数指定,在默认情况下,它会列出有效的主机以及它们所属的数据中心和集群。在收集特定日志信息时,您会被提示输入用户名和密码。
engine-log-collector 命令还提供了其它的参数来对它进行控制。

常规选项

--version
显示命令的版本号。
-h, --help
显示命令的帮助信息。
--conf-file=PATH
PATH 设定为这个命令所使用的配置文件。
--local-tmp=PATH
把日志文件保存在 PATH 目录中。默认的目录是 /tmp/logcollector
--ticket-number=TICKET
TICKET 作为 SOS 报告中的事件号(case number)。
--upload=FTP_SERVER
FTP_SERVER 设为使用 FTP 把所收集的日志信息传输到的目的地。除非红帽的技术支持让您使用这个参数,否则请不要使用它。
--log-file=PATH
PATH 设为这个命令用来作为日志输出的文件的文件名。
--quiet
把命令设为“安静”模式,从而把控制台的输出减到最小。在默认的情况下,安静模式没有被设定。
-v, --verbose
把命令设为 verbose 模式,从而可以提供详细的控制台输出信息。在默认的情况下,verbose 模式没有被设置。

Red Hat Virtualization Manager 选项

这些选项被用来为 Red Hat Virtualization Manager 过滤日志信息的收集,并提供用户认证信息。
这些参数可以被组合使用。例如,engine-log-collector --user=admin@internal --cluster ClusterA,ClusterB --hosts "SalesHost"* 指定了用户为 admin@internal,并只收集集群 A 和集群 B 中的 SalesHost 主机的日志。
--no-hypervisors
不收集虚拟主机的日志信息。
-u USER, --user=USER
指定登录的用户。USER 的格式为 user@domain(其中的 user 是用户名,domain 是使用的目录服务的域)。这里所指定的用户必须存在于目录服务中,并可以被 Red Hat Virtualization Manager 所识别。
-r FQDN, --rhevm=FQDN
设置用来收集日志的 Red Hat Virtualization Manager 的全局域名(使用 Red Hat Virtualization Manager 的全局域名替换 FQDN)。这个命令假设日志收集命令是在 Red Hat Virtualization Manager 所在的同一台机器上被运行的,因此它的默认值是 localhost
-c CLUSTER, --cluster=CLUSTER
除了 Red Hat Virtualization Manager 的日志外,还收集 CLUSTER 中指定的集群中的主机日志。它可以通过以逗号分隔的集群名或匹配特征来指定多个集群。
-d DATACENTER, --data-center=DATACENTER
除了 Red Hat Virtualization Manager 的日志外,还收集 DATACENTER 中指定的数据中心中的主机日志。它可以通过以逗号分隔的数据中心名或匹配特征来指定多个数据中心。
-H HOSTS_LIST, --hosts=HOSTS_LIST
除了 Red Hat Virtualization Manager 的日志外,还收集 HOSTS_LIST 中指定的主机日志。它可以通过以逗号分隔的主机名、全局域名、IP 地址或匹配特征来指定多个主机。

SOS 报告选项

日志收集程序使用 JBoss SOS 插件。使用以下选项来从 JMX 控制台进行数据收集。
--jboss-home=JBOSS_HOME
JBoss 的安装路径。默认值是 /var/lib/jbossas
--java-home=JAVA_HOME
Java 安装路径。默认值是 /usr/lib/jvm/java
--jboss-profile=JBOSS_PROFILE
显示以空格分隔的服务器配置档案列表;日志数据的收集会被限制在这些档案中。它的默认值是 'rhevm-slimmed'
--enable-jmx
启用从 Red Hat Virtualization 的 JBoss JMX 接口收集运行时统计数据的功能。
--jboss-user=JBOSS_USER
有权利调用 JBoss JMX 的用户。默认值是 admin
--jboss-logsize=LOG_SIZE
获取的日志文件的最大容量(以 MB 为单位)
--jboss-stdjar=STATE
为 JBoss 标准的 JAR 设置所采集的 JAR 统计数据。把 STATE 替换为 onoff。默认的值是 on
--jboss-servjar=STATE
设置从任何的服务器配置目录中收集 JAR 的统计数据。把 STATE 替换为 onoff。默认的值是 on
--jboss-twiddle=STATE
设置是否收集 twiddle 数据。Twiddle 是一个 JBoss 工具程序,它可以被用来从 JMX 的调用者中收集数据。把 STATE 替换为 onoff。它的默认值是 on
--jboss-appxml=XML_LIST
显示一组带有 XML 描述数据的应用程序。这些应用程序以空格分隔,并包括在一对引号中。这个参数的默认值是 all

SSH 配置

--ssh-port=PORT
PORT 设置为用来和虚拟主机进行 SSH 连接所使用的端口。
-k KEYFILE, --key-file=KEYFILE
KEYFILE 设置为用来访问虚拟主机的公共 SSH 密钥。
--max-connections=MAX_CONNECTIONS
MAX_CONNECTIONS 设置为同时可以和虚拟主机进行连接来收集日志的 SSH 连接的数量。它的默认值是 10

PostgreSQL 数据库选项

如果数据库的默认用户名和密码已经被改变,使用 pg-userdbname 参数指定数据库当前的用户名和密码。
如果数据库不在本地,需要使用 pg-dbhost 参数(可能还需要使用 pg-host-key 参数)。另外,进行远程日志收集时,PostgreSQL SOS 插件必须安装在数据库服务器上。
--no-postgresql
禁用收集数据库数据的功能。如果没有指定 --no-postgresql 参数,日志采集程序会连接到 Red Hat Virtualization Manager 的 PostgreSQL 数据库,并把其中的数据包括在日志中。
--pg-user=USER
USER 设置为用来和数据库服务器进行连接的用户。它的默认值是 postgres
--pg-dbname=DBNAME
DBNAME 设置为连接到数据库服务器上的数据库名,它的默认值是 rhevm
--pg-dbhost=DBHOST
DBHOST 设置为数据库服务器的主机名,它的默认值是 localhost
--pg-host-key=KEYFILE
KEYFILE 设置为数据库服务器的公共识别文件(私人密钥)。这个值在默认的情况下不会被设置,它只在数据库不在本地的情况下才使用。

17.5.3. 基本日志收集程序用法

当没有使用任何参数运行 engine-log-collector 命令时,它的默认行为是从 Red Hat Virtualization Manager 以及和它关联的所有主机上收集所有日志。在没有使用 --no-postgresql 参数时,它也收集数据库的日志。下面的实例会收集 Red Hat Virtualization Manager 和 3 个与它关联的主机上的所有日志。

例 17.4. 日志收集程序用法

# engine-log-collector
INFO: Gathering oVirt Engine information...
INFO: Gathering PostgreSQL the oVirt Engine database and log files from localhost...
Please provide REST API password for the admin@internal oVirt Engine user (CTRL+D to abort):
About to collect information from 3 hypervisors. Continue? (Y/n):
INFO: Gathering information from selected hypervisors...
INFO: collecting information from 192.168.122.250
INFO: collecting information from 192.168.122.251
INFO: collecting information from 192.168.122.252
INFO: finished collecting information from 192.168.122.250
INFO: finished collecting information from 192.168.122.251
INFO: finished collecting information from 192.168.122.252
Creating compressed archive...
INFO Log files have been collected and placed in /tmp/logcollector/sosreport-rhn-account-20110804121320-ce2a.tar.xz.
The MD5 for this file is 6d741b78925998caff29020df2b2ce2a and its size is 26.7M

为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。