BinaryLog 指令選項
請利用 binaryLog 指令來檢視或複製二進位記載儲存庫的內容,或列出儲存庫中可用的伺服器處理程序實例。 binaryLog 指令相當於傳統應用程式伺服器設定檔 bin 目錄中的 logViewer 指令。
語法
指令語法如下:
binaryLog action {serverName | repositoryPath} [options]
options 值會根據 action 值而不同。
參數
binaryLog 指令的可用動作如下:
- view
- 讀取儲存庫,選擇性地加以過濾,再建立使用者能夠讀取的版本。
指令語法如下:
binaryLog view {serverName | repositoryPath} [options]
serverName
指定要讀取的儲存庫所在的 Liberty 伺服器名稱。
repositoryPath
指定要讀取的儲存庫的路徑。 這個路徑通常是包含日誌資料和追蹤資料目錄的目錄。
註: 請在指令行上指定 serverName 的值和 repositoryPath 的值。否則會針對預設伺服器實例 defaultServer(如果存在的話)執行作業。 過濾選項:
所有過濾器都是選用的。當使用多個過濾器時,會用 AND 將它們邏輯地連結起來。
- --minDate=value
根據最小記錄建立日期的過濾器。值必須指定為日期(例如,--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=value
根據最大記錄建立日期來進行過濾。值必須指定為日期(例如,--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]*
包括含有指定日誌程式名稱的記錄。值可以包含 * 作為萬用字元。
- --includeMessage=value
根據訊息名稱來進行過濾。值可以包含 * 作為萬用字元。
- --includeThread=value
包括含有指定執行緒 ID 的記錄。值必須是十六進位(例如,--includeThread=2a)。
- --includeExtension=name=value[,name=value]*
包括含有指定延伸規格名稱和值的記錄。 值可以包含 * 或 ? 作為萬用字元。如果要在值中包含逗點,您必須使用 "\,"
- --includeInstance=value
包括指定伺服器實例中的記錄。值必須是 "latest" 或有效的實例 ID。請利用 listInstances 動作來執行這個指令,以查看有效實例 ID 的清單。
- --minDate=value
- 監視選項:
- --monitor
持續監視儲存庫,產生新內容時,便輸出新內容。
輸出選項:- --format={basic | advanced | CBE-1.0.1}
指定使用的輸出格式。"basic" 是預設格式。
- --encoding=value
指定輸出所用的字元編碼值。
--isoDateFormat
指定用於輸出的 ISO-8601 日期和時間格式。
- --format={basic | advanced | CBE-1.0.1}
- copy
- 讀取儲存庫,選擇性地加以過濾,再將內容寫入新儲存庫中。
- 指令語法如下:
binaryLog copy {serverName | repositoryPath} targetPath [options]
- serverName
指定要讀取的儲存庫所在的 Liberty 伺服器名稱。
- repositoryPath
指定要讀取的儲存庫的路徑。 這個路徑通常是包含日誌資料和追蹤資料目錄的目錄。
- targetPath
指定建立新儲存庫的路徑。必須指定 targetPath。 也必須指定 serverName 或 repositoryPath。
過濾選項:
- 所有過濾器都是選用的。當使用多個過濾器時,會用 AND 將它們邏輯地連結起來。
- --minDate=value
根據最小記錄建立日期來進行過濾。值必須指定為日期(例如,--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=value
根據最大記錄建立日期來進行過濾。值必須指定為日期(例如,--maxDate="23/01/17")或日期和時間(例如,--maxDate="23/01/17 17:39:53:100 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]*
包括含有指定日誌程式名稱的記錄。值可以包含 * 作為萬用字元。
- --excludeLogger=value[,value]*
排除含有指定日誌程式名稱的記錄。值可以包含 * 作為萬用字元。
- --includeMessage=value
根據訊息名稱來進行過濾。值可以包含 * 作為萬用字元。
- --includeThread=value
包括含有指定執行緒 ID 的記錄。值必須是十六進位(例如,--includeThread=2a)。
- --includeExtension=name=value[,name=value]*
包括含有指定延伸規格名稱和值的記錄。 值可以包含 * 或 ? 作為萬用字元。如果要在值中包含逗點,您必須使用 "\,"
- --includeInstance=value
包括指定伺服器實例中的記錄。值必須是 "latest" 或有效的實例 ID。請利用 listInstances 動作來執行這個指令,以查看有效實例 ID 的清單。
- --minDate=value
- listInstances
- 列出儲存庫中伺服器實例的 ID。伺服器實例是從伺服器啟動直到停止所寫入的所有日誌/追蹤記錄的集合。 伺服器實例 ID 可以搭配 binaryLog view 動作的 --includeInstance 選項來使用。
- 指令語法如下:
binaryLog listInstances {serverName | repositoryPath} [options]
- serverName
指定要讀取的儲存庫所在的 Liberty 伺服器名稱。
- repositoryPath
指定要讀取的儲存庫的路徑。 這個路徑通常是包含日誌資料和追蹤資料目錄的目錄。
- 註: 請在指令行上指定 serverName 的值和 repositoryPath 的值。否則會針對預設伺服器實例 defaultServer(如果存在的話)執行作業。
輸出選項:
- --isoDateFormat
指定用於輸出的 ISO-8601 日期和時間格式。
- --isoDateFormat
- 請注意 binaryLog 過濾最佳化功能。在搭配下列過濾選項一起使用時,binaryLog 工具可以很有效率地過濾日誌和追蹤資料:
- --minDate
- --maxDate
- --includeThread
- --minLevel
- --maxLevel
- 範例用法
請參閱下列 binaryLog 指令範例。
- 顯示 2013 年 7 月 19 日至 2013 年 8 月 2 日之間,defaultServer 儲存庫中的所有事件。
binaryLog view --minDate=07/19/13 --maxDate=08/02/13
- 當 myServer 伺服器將其中指定層次為 WARNING 或更高的新事件寫入日誌儲存庫時,利用進階格式來顯示這些事件。
binaryLog view myServer --monitor --minLevel=WARNING --format=advanced
- 寫入位於 /apps/server1/logs 的儲存庫其中的日誌訊息;只包含已寫入特定儲存庫之錯誤串流的日誌訊息。
binaryLog view /apps/server1/logs --includeLogger=SystemErr
- 檢視 defaultServer 儲存庫中,在東岸日光節約時間 2012 年 9 月 14 日下午 4:28 之前所發生的事件。
binaryLog view --maxDate="09/14/12 16:28:00:000 EDT"
- 從 defaultServer 儲存庫中,寫入包含 'thread' 延伸規格且其值為 'Default Executor-thread-4' 的事件
binaryLog view --includeExtension=thread="Default Executor-thread-4" --format=advanced
- 檢視 defaultServer 儲存庫中的伺服器實例清單:
binaryLog listInstances 使用 D:\wlp\usr\servers\defaultServer\logs 作為儲存庫目錄。 實例 ID 開始日期 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 來檢視 defaultServer 中的事件:
binaryLog view --includeInstance=1358871281166
- 複製 defaultServer 中指定層次為 WARNING 或更高的事件,從最新的伺服器實例複製到位於 d:\toSupport 目錄的新儲存庫。
binaryLog copy defaultServer d:\toSupport --minLevel=warning --includeInstance=latest
發出下列指令,以 ISO-8601 格式檢視 defaultServer 儲存庫的時間和日期:
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]: 順利銷毁。 [2017-01-16T23:36:43.900-0500] 00000150 AppMessageHel A CWWKZ0009I: 應用程式 hello-world 已順利停止。
輸入下列指令,以 ISO-8601 格式列出儲存庫中伺服器實例的 ID:
listInstances --isoDateFormat
輸出如下所示:實例 ID 開始日期 1484625121871 2017-01-16T22:52:01.871-0500 1484626095175 2017-01-16T23:08:15.175-0500
- 顯示 2013 年 7 月 19 日至 2013 年 8 月 2 日之間,defaultServer 儲存庫中的所有事件。