INV 記錄 log 的機制

2021-07-04 00:22:45 字數 654 閱讀 6868

之前寫過一篇 rtp 記錄 log 的機制. inv 寫 log 要簡單一些;

寫 inv log 是在 pl/sql **裡面呼叫

inv_log_util.trace(p_message varchar2,

p_module varchar2,

p_level number :=9);

裡面三個引數. 控制 log 的有三個 profile, 可以在 form 裡面設定.

我們現在比較關注的是, 在pl/sql 中呼叫的**, 怎樣能夠在檔案系統中寫檔案呢? 原因在於oracle 資料庫提供了乙個包, utl_file, 這個包是public 的, 所以所有使用者都可以呼叫. 呼叫這個包就可以在指定的目錄下面讀寫操作系統檔案了. 當然, oracle 的擁有者必須有這些目錄上的許可權. 設定目錄的引數是 utl_file_dir, 這是乙個靜態引數, 定義在 spfile 中, 所以要重啟資料庫才能使之生效. 例如設定目錄為 /usr/tmp, 就可以在這個目錄下讀寫日誌檔案.

另外, 日誌有個緩衝的問題. 在 r12 中, 打過 patch 9184617:r12.po.a 之後rtp 的日誌也被寫到 inv 日誌中, 但是 rtp 的log 可能會被快取, 到最後才一股腦寫入日誌. 這樣日誌的順序就顛倒了. 這是需要注意的一點.

平台log機制

平台使用log4j,根據問題來學習 1.配置檔案 在專案工程目錄下的build home clientmodules platform client properties log4j.properties檔案,即為logger4j的配置檔案 0 何時載入這些配置檔案?但並沒有找到log相關的標籤.未...

Python 日誌記錄 log

usr bin python3.4 logger物件相當於是寫日誌的人 hand處理器相當於是寫日誌的規則 import logging import datetime def my log record my logger,my formatter fh logging.filehandler m...

RabbitMQ機制記錄

1 topic模式機制測試結果 1 客戶端連線不同佇列,當exchange發布訊息通過routing key到不同佇列時,兩個佇列均能收到訊息。2 exclusive,設定為true時,客戶端連線斷掉,佇列消失,且佇列內資料丟失。2 延遲執行 主要靠外掛程式 rabbitmq plugins ena...