17.6. ログ収集ツール

17.6.1. ログコレクター

Red Hat Enterprise Virtualization Manager には、ログ収集ツールが含まれています。これにより、サポートをリクエストする際には、Red Hat Enterprise Virtualization 環境全体にわたる関連ログを簡単に収集することができます。
ログ収集のコマンドは、engine-log-collector です。root ユーザーとしてログインして、コマンドライン上で Red Hat Enterprise Virtualization 環境の管理者の認証情報を入力する必要があります。engine-log-collector -h コマンドを実行すると、engine-log-collector の有効なコマンドオプションの全一覧など使用方法に関する詳しい説明を表示することができます。

17.6.2. engine-log-collector コマンドの構文

ログコレクターコマンドの基本構文は以下の形式です。
engine-log-collector [options] list [all, clusters, datacenters]
engine-log-collector [options] collect
list および collect の 2 つの操作モードに対応しています。
  • list パラメーターは、Red Hat Enterprise Virtualization Manager にアタッチされているホスト、クラスター、データセンターのいずれかを一覧表示します。一覧表示されたオブジェクトをベースとして、ログ収集をフィルタリングできます。
  • collect パラメーターは、Red Hat Enterprise 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 レポートに関連付けるチケットまたはケース番号を指定します。
--upload=FTP_SERVER
FTP_SERVER には、FTP を使用して送信される取得済みログの送信先を指定します。Red Hat のサポート担当者のアドバイスなしには、このオプションは使用しないでください。
--log-file=PATH
PATH には、このコマンドがログ出力に使用するファイル名を指定します。
--quiet
Quiet モードに設定し、コンソールの出力を最小限に抑えます。Quiet モードはデフォルトではオフになっています。
-v--verbose
詳細モードに設定し、より詳しいコンソール出力を提供します。詳細モードは、デフォルトではオフになっています。

Red Hat Enterprise Virtualization Manager のオプション

以下のオプションは、ログ収集をフィルタリングして、Red Hat Enterprise Virtualization Manager に対する認証の詳細を指定します。
これらのパラメーターは特定のコマンドと組み合わせることができます。たとえば、engine-log-collector --user=admin@internal --cluster ClusterA,ClusterB --hosts "SalesHost"* は、ユーザーを admin@internal と指定して、ログ収集を A および B のクラスター内の SalesHost ホストのみに制限します。
--no-hypervisors
ログ収集から仮想化ホストを除外します。
-u USER--user=USER
ログインするユーザー名を設定します。USERuser@domain の形式で指定します。user はユーザー名、domain は使用しているディレクトリーサービスドメインです。ユーザーは、ディレクトリーサービス内に存在し、かつ Red Hat Enterprise Virtualization Manager が認識している必要があります。
-r FQDN--rhevm=FQDN
ログを収集する Red Hat Enterprise Virtualization Manager サーバーの完全修飾ドメイン名を設定します。FQDN の箇所は Manager の完全修飾ドメイン名に置き換えてください。ログコレクターは、Red Hat Enterprise Virtualization Manager と同じローカルホストで実行されることを前提としています。デフォルト値は localhost です。
-c CLUSTER, --cluster=CLUSTER
Red Hat Enterprise Virtualization Manager からのログに加えて、指定された CLUSTER の仮想化ホストからのログも収集します。対象となるクラスターは、クラスター名またはマッチパターンのコンマ区切りリストで指定する必要があります。
-d DATACENTER, --data-center=DATACENTER
Red Hat Enterprise Virtualization Manager からのログに加えて、指定された DATACENTER の仮想化ホストからのログも収集します。対象となるデータセンターは、データセンター名またはマッチパターンのコンマ区切りリストで指定する必要があります。
-H HOSTS_LIST--hosts=HOSTS_LIST
Red Hat Enterprise 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 Enterprise Virtualization の JBoss JMX インターフェースからのランタイムメトリックの収集を有効にします。
--jboss-user=JBOSS_USER
JBoss JMX を呼び出すパーミッションを持つユーザー。デフォルトは admin です。
--jboss-logsize=LOG_SIZE
取得したログファイルの最大サイズ (MB 単位)
--jboss-stdjar=STATE
JBoss 標準 JAR の JAR 統計の収集を指定します。STATE の箇所は on または off に置き換えます。デフォルトは on です。
--jboss-servjar=STATE
任意のサーバー設定ディレクトリーからの JAR 統計収集を設定します。STATE の箇所は on または off に置き換えます。デフォルトは on です。
--jboss-twiddle=STATE
Twiddle データの収集を on または off に設定します。Twiddle は JMX の呼び出し元からデータを収集するために使用する JBoss のツールです。STATE の箇所は on または off に置き換えます。デフォルトは 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 Enterprise Virtualization Manager PostgreSQL データベースに接続して、ログレポートにデータを追加します。
--pg-user=USER
USER には、データベースサーバーへの接続に使用するユーザー名を設定します。デフォルトは postgres です。
--pg-dbname=DBNAME
DBNAME には、データベースサーバーとの接続に使用するデータベース名を指定します。デフォルトは rhevm です。
--pg-dbhost=DBHOST
DBHOST には、データベースサーバーのホスト名を指定します。デフォルトは localhost です。
--pg-host-key=KEYFILE
KEYFILE には、データベースサーバーの公開 ID ファイル (秘密鍵) を指定します。この値は、ローカルホスト上にデータベースが存在しない場合にのみ必要なため、デフォルトでは設定されていません。

17.6.3. ログコレクターの基本的な使用例

追加のパラメーターを指定せずに engine-log-collector コマンドを実行した場合には、デフォルトの動作は、Red Hat Enterprise Virtualization Manager および Manager にアタッチされたホストからのログをすべて収集します。また、--no-postgresql パラメーターが指定されていない限り、データベースのログも収集します。以下の例では、ログコレクターのコマンドを実行して、Red Hat Enterprise Virtualization Manager とアタッチされたホスト 3 台からのログをすべて収集します。

例17.9 ログコレクターの使用例

# 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