binaryLog コマンドを使用すると、バイナリー・ロギング・リポジトリーのコンテンツを表示およびコピーしたり、また、リポジトリー内の使用可能なサーバー・プロセス・インスタンスをリストしたりできます。 binaryLog コマンドは、従来のアプリケーション・サーバーのプロファイル bin ディレクトリー内の LogViewer コマンドと同等です。
バイナリー・ログおよびトレース機能は、バイナリー形式でリポジトリーに書き込みます。 binaryLog コマンドを使用することによって、リポジトリーの表示、照会、およびフィルター操作を実行できます。 binaryLog コマンドには、リポジトリーの内容をさまざまな形式 (基本形式や拡張形式など) のテキスト・ファイルに迅速に変換するオプションがあります。 また、このコマンドには、必要なデータをログから簡単に取得するためのオプションもあります。 例えば、レベル、ロガー名、メッセージ、または日時によって、必要なログ・レコードをフィルターに掛けることができます。
構文
コマンド構文は次のようになります。
binaryLog action {serverName | repositoryPath} [options]
options の値は action の値に応じて異なります。
パラメーター
binaryLog コマンドで使用可能なアクションは、以下のとおりです。
- view
- リポジトリーを読み取り、オプションでそれをフィルタリングし、ユーザーが読み取り可能なバージョンを作成します。
コマンド構文は次のようになります。
binaryLog view {serverName | repositoryPath} [options]
serverName
読み取り元のリポジトリーを持つ Liberty サーバーの名前を指定します。
repositoryPath
読み取り先のリポジトリーへのパスを指定します。 このパスは通常、ログ・データとトレース・データの両方のディレクトリーが含まれたディレクトリーです。
注: コマンド・ラインで、 serverName の値と repositoryPathの値を指定してください。 指定しないと、タスクは、デフォルトのサーバー・インスタンス defaultServer に対して実行されます (このインスタンスが存在する場合)。
フィルター・オプション:
フィルターはすべてオプションです。 複数のフィルターを使用する場合、それらのフィルターは論理的に AND で連結されます。
--minDate=値最小のレコード作成日に基づくフィルター。 値は日付 (例: --minDate="23/01/17") または日時 (例: --minDate="23/01/17 17:39:53:100 EST") のいずれかで指定する必要があります。
日時を ISO-8601 形式で入力することもできます。 例えば、--minDate="2017-01-23" や --minDate="2017-01-23T17:39:53.100-0500" と入力します。
--maxDate=値最大のレコード作成日に基づくフィルター。 値は日付 (例: --maxDate="2/20/13") または日時 (例: --maxDate="2/20/13 16:47:21:445 EST") で指定する必要があります。
日時を ISO-8601 形式で入力することもできます。 例えば、--maxDate="2017-01-23" や --maxDate="2017-01-23T17:39:53.100-0500" と入力します。
- - -minLevel=value
最小レベルに基づくフィルター。 値は以下のいずれかである必要があります。 FINEST | FINER | FINE | DETAIL
| CONFIG | INFO | AUDIT | WARNING | SEVERE | FATAL
- - -maxLevel=value
最大レベルに基づくフィルター。 以下の値のいずれかを指定する必要があります。FINEST | FINER | FINE | DETAIL | CONFIG | INFO | AUDIT | WARNING | SEVERE | FATAL
- - -includeLogger=value[,value] *
指定されたロガー名のレコードを組み込みます。 値には * をワイルドカードとして使用することができます。
--excludeMessage=値指定されたメッセージのレコードを除外します。 値には * をワイルドカードとして使用することができます。
- - -includeMessage=value
メッセージ名に基づくフィルター。 値には * をワイルドカードとして使用することができます。
- - -includeThread=value
指定のスレッド ID のレコードを包含します。 値は 16 進数でなければなりません (例: --includeThread=2a)。
- --includeExtension= 名前 = 値 [, 名前 = 値 ]*
指定された拡張名および値のレコードを組み込みます。 値には * または ? を含めることができます。 ワイルドカードとして使用できます。 値にコンマを含める場合は、「¥」を使用する必要があります。
- - -includeInstance=value
指定のサーバー・インスタンスのレコードを包含します。 値は「latest」または有効なインスタンス ID でなければなりません。 listInstances アクションを使用してこのコマンドを実行すると、有効なインスタンス ID のリストが表示されます。
- モニター・オプション:
- --monitor
リポジトリーを継続的にモニターし、新しいコンテンツの生成時にそのコンテンツを出力します。
- copy
- リポジトリーを読み取り、オプションでそれをフィルタリングし、コンテンツを新規リポジトリーに書き込みます。
- コマンド構文は次のようになります。
binaryLog copy {serverName | repositoryPath} targetPath [options]
- serverName
読み取り元のリポジトリーを持つ Liberty サーバーの名前を指定します。
- repositoryPath
読み取り先のリポジトリーへのパスを指定します。 このパスは通常、ログ・データとトレース・データのディレクトリーが含まれたディレクトリーです。
- targetPath
新規リポジトリーを作成する場所のパスを指定します。 targetPath は必ず指定してください。 serverName または repositoryPath のいずれかを指定する必要があります。
フィルター・オプション:
- フィルターはすべてオプションです。 複数のフィルターを使用する場合、それらのフィルターは論理的に AND で連結されます。
--minDate=値最小のレコード作成日に基づくフィルター。 値は日付 (例: --minDate="23/01/17") または日時 (例: --minDate="23/01/17
17:39:53:100 EST") のいずれかで指定する必要があります。
日時を ISO-8601 形式で入力することもできます。 例えば、--minDate="2017-01-23" や --minDate="2017-01-23T17:39:53.100-0500" と入力します。
--maxDate=値最大のレコード作成日に基づくフィルター。 値は日付 (例: --maxDate="23/01/17") または日時 (例: --maxDate="23/01/17
17:39:53:100 EST") のいずれかで指定する必要があります。
日時を ISO-8601 形式で入力することもできます。 例えば、--maxDate="2017-01-23" or
--maxDate="2017-01-23T17:39:53.100-0500" と入力します。
--minLevel=値最小レベルに基づくフィルター。 以下の値のいずれかを使用する必要があります。FINEST | FINER | FINE | DETAIL | CONFIG | INFO | AUDIT | WARNING | SEVERE | FATAL
--maxLevel=値最大レベルに基づくフィルター。 以下の値のいずれかを使用する必要があります。FINEST | FINER | FINE | DETAIL | CONFIG | INFO | AUDIT | WARNING | SEVERE | FATAL
--includeLogger=値[,value] *指定されたロガー名のレコードを組み込みます。 値には * をワイルドカードとして使用することができます。
--excludeLogger=値[,value] *指定されたロガー名のレコードを除外します。 値には * をワイルドカードとして使用することができます。
--includeMessage=値メッセージ名に基づくフィルター。 値には * をワイルドカードとして使用することができます。
--excludeMessage=値指定されたメッセージのレコードを除外します。 値には * をワイルドカードとして使用することができます。
--includeThread=値指定のスレッド ID のレコードを包含します。 値は 16 進数でなければなりません (例: --includeThread=2a)。
--includeExtension=name=値[,name=値] *指定された拡張名および値のレコードを組み込みます。 値には * または ? を含めることができます。 ワイルドカードとして使用できます。 値にコンマを含める場合は、「¥」を使用する必要があります。
--includeInstance=値指定のサーバー・インスタンスのレコードを包含します。 値は「latest」または有効なインスタンス ID でなければなりません。 listInstances アクションを使用してこのコマンドを実行すると、有効なインスタンス ID のリストが表示されます。
- listInstances
- リポジトリー内のサーバー・インスタンスの ID をリストします。 サーバー・インスタンスは、サーバーの始動時から停止時までに書き込まれたすべてのログまたはトレースのレコードの集合です。 サーバー・インスタンス ID は、binaryLog 表示アクションの --includeInstance オプションとともに使用できます。
コマンド構文は次のようになります。
binaryLog listInstances {serverName | repositoryPath} [options]
- serverName
読み取り元のリポジトリーを持つ Liberty サーバーの名前を指定します。
- repositoryPath
読み取り先のリポジトリーへのパスを指定します。 このパスは通常、ログ・データとトレース・データのディレクトリーが含まれたディレクトリーです。
注: コマンド・ラインで、 serverName の値と repositoryPathの値を指定してください。 指定しないと、タスクは、デフォルトのサーバー・インスタンス defaultServer に対して実行されます (このインスタンスが存在する場合)。
- 出力オプション:
- binaryLog のフィルタリングの最適化に注意してください。 binaryLog ツールは、以下のフィルター・オプションを指定して使用された場合に、最も効率的にログ・データおよびトレース・データをフィルタリングできます。
- --minDate
- --maxDate
- --includeThread
- --minLevel
- --maxLevel
- Example usage
以下の binaryLog コマンドの例を参照してください。
- 2013 年 7 月 19 日から 2013 年 8 月 2 日までの間の、defaultServer リポジトリー内のすべてのイベントを表示します。
binaryLog view --minDate=07/19/13 --maxDate=08/02/13
- 指定されたレベルが WARNING 以上の、サーバー myServer の新規イベントを、サーバーがログ・リポジトリーに書き込んだ時点で拡張形式を使用して表示します。
binaryLog view myServer --monitor --minLevel=WARNING --format=advanced
- /apps/server1/logs にあるリポジトリーからのログ・メッセージを書き込みます。
特定のリポジトリーのエラー・ストリームに書き込まれたログ・メッセージだけを組み込みます。
binaryLog view /apps/server1/logs --includeLogger=SystemErr
- 2012 年 9 月 14 日 PM 4:28 EDT (米国東部夏時間) より前に発生した、defaultServer リポジトリーからのイベントを表示します。
binaryLog view --maxDate="09/14/12 16:28:00:000 EDT"
- 拡張「thread」に値「Default Executor-thread-4」が入ったイベントを defaultServer リポジトリーから書き込みます。
binaryLog view --includeExtension=thread="Default Executor-thread-4" --format=advanced
- defaultServer リポジトリー内のサーバー・インスタンスのリストを表示します。
binaryLog listInstances
Using D:\wlp\usr\servers\defaultServer\logs as repository directory.
Instance ID Start Date
1358809441761 1/21/13 18:04:01:761 EST
1358864476191 1/22/13 9:21:16:191 EST
1358869523192 1/22/13 10:45:23:192 EST
1358871281166 1/22/13 11:14:41:166 EST
1358879829000 1/22/13 13:37:09:000 EST
1358892222067 1/22/13 17:03:42:067 EST
- 前の例のインスタンス ID のうちの 1 つを使用して defaultServer からのイベントを表示します:
binaryLog view --includeInstance=1358871281166
- defaultServer, から、指定レベルが警告以上のイベントを、最新のサーバーインスタンスから d:\toSupport ディレクトリにある新しいリポジトリにコピーします。
binaryLog copy defaultServer d:\toSupport --minLevel=warning --includeInstance=latest
- 以下のコマンドを発行して、defaultServer リポジトリーの ISO-8601 形式の日時を表示します。
binaryLog view --isoDateFormat
出力は以下のとおりです。
[2017-01-16T23:36:43.891-0500] 00000150 servlet I com.ibm.ws.webcontainer.servlet.ServletWrapper doDestroy SRVE0253I:
[hello-world] [/hello-world] [/index.jsp]: Destroy successful.
[2017-01-16T23:36:43.900-0500] 00000150 AppMessageHel A CWWKZ0009I: The application hello-world has stopped successfully.
- 以下のコマンドを入力して、ISO-8601 形式でリポジトリー内のサーバー・インスタンスの ID をリストします。
listInstances --isoDateFormat
出力は以下のとおりです。
Instance ID Start Date
1484625121871 2017-01-16T22:52:01.871-0500
1484626095175 2017-01-16T23:08:15.175-0500