監聽器日誌檔案(listener.log)到底記錄了些啥
分析監聽日誌檔案
這一章節描述了監聽日誌檔案中記錄了什麼內容。該章節包含以下主題:
- 監聽器日誌審計跟蹤資訊
- 監聽器服務註冊事件資訊
- 監聽器直接Hand-Off資訊
- 監聽器訂閱ONS節點關閉事件資訊
- 監聽器Oracle叢集通知資訊
監聽器日誌審計跟蹤資訊
監聽器日誌檔案包含了審計跟蹤資訊,您可以用來收集和分析網路使用情況;還包括以下資訊:
l 客戶端的連線請求
l 監聽器控制工具發出的RELOAD,START,STOP,, STATUS或者 SERVICES命令
您可以使用審計跟蹤資訊來檢視趨勢和使用者活動。具體的,首先將資訊儲存到一個表裡,然後整理成報告的格式。為了將資料匯入到表中,可以使用匯入實用程式,如SQL* Loader。
監聽器日誌審計跟蹤資訊的格式
審計跟蹤資訊遵照以下格式:
點選(此處)摺疊或開啟
- Timestamp * Connect Data [* Protocol Info] * Event [* SID | Service] * Return Code
審計跟蹤資訊的特性如下:
l 每個欄位由星號(*)分隔
l 只有在嘗試建立連線時才會出現協議地址資訊和服務名稱或SID資訊
l 成功的連線或命令返回程式碼零
l 失敗生成一個可以對映到錯誤訊息的程式碼
例16-4顯示了一個發出reload命令請求的日誌檔案片段。
例 16-4 重新載入監聽器命令的監聽器日誌事件
點選(此處)摺疊或開啟
-
14-MAY-2009 00:29:54 *
-
(connect_data=(cid=(program=)(host=sales-server)(user=jdoe))(command=reload)
-
(arguments=64)(service=listener)(version=135290880))
- * reload * 0
例16-5顯示了一個連線請求成功的日誌檔案片段。
例 16-5 連線請求成功的監聽器日誌事件
點選(此處)摺疊或開啟
-
14-MAY-2009 15:28:58 *
-
(connect_data=(service_name=sales.us.example.com)(cid=(program=)(host=sales-server)
-
(user=jdoe)))
-
* (address=(protocol=tcp)(host=192.168.2.35)(port=41349)) * establish
- * sales.us.example.com * 0
例 16-6 連線請求失敗的監聽器日誌事件
點選(此處)摺疊或開啟
-
03-MAY-2009 16:41:57 *
-
(CONNECT_DATA=(CID=(PROGRAM=)(HOST=sales-server)(USER=jdoe))(COMMAND=status)
-
(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=153092352)) * status * 0
-
03-MAY-2009 16:42:35 * <unknown connect data> *
-
(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.2.35)(PORT=53208)) * establish *
-
<unknown sid> * 12525
- TNS-12525: TNS:listener has not received client
監聽器服務註冊事件資訊
監聽器記錄了服務註冊事件資訊。在服務註冊期間,PMON程式向監聽器提供以下資訊:
l 資料庫的每個執行例項的服務名
l 資料庫例項名
l 可用的服務處理器(排程程式或專用伺服器)
l 排程程式,例項和節點負載資訊
l 動態監聽端點
表16-14中列出的註冊服務相關的事件,均記錄在listener.log中。
表 16-14 服務註冊事件日誌資訊
事件 |
描述 |
service_register |
監聽器接收到一個例項的註冊資訊 |
service_update |
監聽器接收到特定例項的更新服務資訊,例如排程程式或者例項負載資訊等 |
service_died |
監聽器和PMON程式失去連線。該例項的所有註冊資訊被丟棄。在PMON程式重新註冊之前,所有的客戶端都無法連線該例項。 |
監聽器服務註冊資訊的格式
服務註冊事件日誌資訊格式如下:
點選(此處)摺疊或開啟
- Timestamp * Event * Instance Name * Return Code
l 每個欄位由星號(*)分隔
l 對於一個例項而言,在一行中出現多次是正常的
l 註冊成功返回程式碼零,這意味著客戶端可以連線到該例項
l 註冊失敗會產生一個可以對映到錯誤訊息的程式碼
例16-7顯示了服務註冊事件的日誌檔案片段。在一次成功的service_register事件之後,監聽器能夠接收客戶端請求;但是在service_died事件發生後,監聽器將無法將收到客戶端的請求。
例 16-7 服務註冊事件的監聽器日誌
點選(此處)摺疊或開啟
-
-------------------------------
-
14-MAY-2009 15:28:43 * service_register * sales * 0
-
14-MAY-2009 15:28:43 * service_register * sales * 0
-
14-MAY-2009 15:28:58 *
-
(connect_data=(service_name=sales.us.example.com)
-
(cid=(program=)(host=sales-server)(user=jdoe)))
-
* (address=(protocol=tcp)(host=192.168.2.35)(port=41349)) * establish
-
* sales.us.example.com * 0
-
14-MAY-2009 15:38:44 * service_update * sales * 0
-
14-MAY-2009 15:38:44 * service_update * sales * 0
-
14-MAY-2009 15:48:45 * service_update * sales * 0
-
14-MAY-2009 15:48:45 * service_update * sales * 0
-
14-MAY-2009 15:50:57 *
-
(connect_data=(service_name=sales.us.example.com)(cid=(program=)
-
(host=sales-server)(user=jdoe)))
-
* (address=(protocol=tcp)(host=192.168.2.35)(port=41365)) * establish
-
* sales.us.example.com * 0
-
14-MAY-2009 15:51:26 * service_died * sales * 12537
-
14-MAY-2009 15:51:26 * service_died * sales * 12537
-
14-MAY-2009 15:52:06 *
-
(connect_data=(service_name=sales.us.example.com)
-
(cid=(program=)(host=sales-server)(user=jdoe)))
-
* (address=(protocol=tcp)(host=192.168.2.35)(port=41406)) * establish
-
* sales.us.example.com * 12514
- TNS-12514: TNS:listener could not resolve SERVICE_NAME given in connect descriptor
監聽器直接Hand-Off資訊
監聽器記錄了發給排程程式的直接Hand-Off資訊。這些資訊被格式化如下:
Timestamp * Presentation * Handoff * Error Code
直接Hand-Off資訊的特性如下:
l 每個欄位由星號(*)分隔
l 成功的連線或命令返回程式碼零
l 失敗生成一個可以對映到錯誤訊息的程式碼
例16-8顯示了日誌檔案中的一個直接Hand-Off資訊。
例 16-8 直接Hand-Off資訊的監聽器日誌
點選(此處)摺疊或開啟
- 21-MAY-2009 10:54:55 * oracle.aurora.net.SALESHttp2 * handoff * 0
監聽器訂閱ONS節點關閉事件資訊
如果ONS配置檔案可用,監聽器將訂閱資料庫啟動期間Oracle通知服務(ONS)節點的關閉事件。當監聽器接收到來自ONS的節點關閉事件後, 該訂閱會使監聽器刪除受影響的服務。對於該事件通知,監聽器使用非同步訂閱。
如果訂閱未完成,每次執行STATUS命令時就會在監聽器日誌檔案中記錄如下的警告資訊;例如,如果ONS守護程式在主機上未執行。
點選(此處)摺疊或開啟
- WARNING: Subscription for node down event still pending
監聽器Oracle叢集通知資訊
如果安裝了所需的Oracle叢集件(以下日誌訊息中提到的CRS)庫,並且主機上的Oracle Clusterware已啟動,那麼在啟動或者關閉過程中,Oracle監聽器將向Oracle叢集件通知監聽器狀態。在通知成功後,監聽器會在日誌中記錄該事件。如果通知失敗,將不會記錄日誌。
點選(此處)摺疊或開啟
-
Listener completed notification to CRS on start
- Listener completed notification to CRS on stop
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30162081/viewspace-1792241/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 管理監聽器日誌listener.log
- 如何線上操作監聽日誌listener.log
- 監聽日誌檔案的管理
- ORACLE停止監聽日誌檔案Oracle
- listener_scan1.log、listener.log監聽日誌清理
- 記錄日誌檔案
- 如何更改監聽器日誌檔名稱
- 日誌模組(一標頭檔案就實現了日誌記錄)
- Oracle 監聽器日誌解析Oracle
- Oracle 監聽器日誌解析(續)Oracle
- Laravel 指定日誌檔案記錄任意日誌Laravel
- 日誌記錄器
- Oracle 監聽器日誌配置與管理Oracle
- 操作日誌記錄(包括輸出至自定義日誌檔案)
- oracle清理監聽日誌Oracle
- 【LISTENER】禁止產生監聽器日誌的方法
- 使apache的日誌檔案裡不記錄圖片檔案Apache
- 關閉監聽的日誌。
- 日誌檔案的監測與檔案清理
- oracle 資料庫lsnrctl監聽的日誌路徑和trace檔案Oracle資料庫
- nginx日誌檔案按天記錄定時清理迴圈記錄Nginx
- 記錄一則clear重做日誌檔案的案例
- 使用配置檔案方式記錄Python程式日誌Python
- oracle監聽器日誌過大-處理辦法Oracle
- php日誌,記錄日誌PHP
- Oracle之外部表監聽日誌Oracle
- monolog 日誌記錄器解析Mono
- PHP設定時區,記錄日誌檔案的方法PHP
- 關於RAC中的監聽log檔案listener.log 及listener_rac01.log
- Oracle監聽日誌2g-監聽啟動報錯Oracle
- Nginx訪問日誌、Nginx日誌切割、靜態檔案不記錄日誌和過期時間Nginx
- SLF4J記錄日誌&&日誌檔案的滾動策略__SpringBootSpring Boot
- Linux用inotify監聽檔案和目錄Linux
- 使用外部表訪問監聽日誌
- python日誌記錄器的配置Python
- springboot使用logback記錄日誌,配置檔案Spring Boot
- django 專案日誌記錄設定Django
- 刪除oracle 11g的警告日誌和監聽日誌Oracle