0
我不知道是否可以使用log4net執行以下操作。Log4net外部配置(C#)
我有一個服務,它在啓動時從數據庫讀取其所有配置。在配置中有日誌配置,如「日誌級別」和「日誌文件位置」。
要求是寫入所有日誌,包括從服務啓動日誌到從數據庫讀取的日誌文件位置(當然如果連接到數據庫時有任何問題)。
一位同事寫了一個非常簡單的日誌類來滿足這個要求,但我真的想使用log4net來使用log4net已經提供的幾個功能。
你有什麼想法如何做到這一點?
這解決了問題的一半,但真正的「問題」是,來自服務啓動的日誌不會寫入數據庫中配置的日誌路徑。 PS。我不直接從數據庫中讀取配置,該服務被集成到一個框架中,該框架通過一個內部與配置服務器建立TCP連接的API連接,以獲得服務配置。我有興趣將此連接記錄到已配置的日誌路徑中 –
可以在啓動時提供一組默認的log4net設置,以便在加載新設置之前,所有日誌條目都轉到默認日誌文件?如果您想排查連接故障,那麼這是一種解決方法,可爲您提供足夠的信息。或者,如果您確實想將所有日誌條目寫入「logpath」,則在加載新設置之前,您必須緩存日誌條目。我從來沒有這樣做,我不確定log4net是否已經有一些支持緩存。 –
準確地說,對緩存的支持是我正在尋找的。我不知道,也許使用自定義appender或修改log4net中的某些屬性。我提出了同樣的解決方法,但是顯然這是不可接受的,這就是爲什麼我們使用一個同事非常簡單的記錄器實現。 –