在我當前的項目中,我使用Maven和Spring。我目前正在使用SLF4J記錄器來記錄服務。代替我想使用OWASP-ESAPI記錄器。我不想使用OWASP-ESAPI
安全性,只是日誌服務。任何人都可以請指導我如何使用OWASP-ESAPI
記錄器通過以最小的努力取代slf4j記錄器?我嘗試了很多谷歌搜索,但沒有任何幫助。我真的很感謝一些鏈接,以獲得關於OWASP-ESAPI
記錄器的知識。需要OWASP-ESAPI記錄器幫助
2
A
回答
0
關鍵要注意的是,ESAPI僅爲log4j或commons java.util日誌記錄生成。我假設log4j。
第1步:從您的類路徑中刪除slf4j庫。如果你使用的是IDE,這應該是「聖誕樹」你的應用程序,並告訴你一切你必須改變。
第2步:添加ESAPI到classpath
步驟3:手動所有SLF4J記錄通話的轉換爲其新ESAPI對應。你會搶在ESAPI記錄器的引用是這樣的:
Logger logger = ESAPI.getLogger("my.foo.class.Foo");
所提供的信息,這是非常簡單的。
注意:Log4j不支持slfj支持的一些格式化調用。這將導致您手動重新創建輸入,或者在所有這些實例上保持關閉狀態,直到稍後再繼續使用slf4j,但只使用[MessageFormatter][1]
來傳入日誌輸入。
3
重構您的代碼以刪除slf4j是一個可怕的解決方案,因爲那樣您就失去了將JUL,JCL,LOG4J流量捕獲到通用日誌漏斗的能力。事先的迴應是不好的建議。
您可以啓用ESAPI使用JUL記錄,然後,通過使用JUL了SLF4J,奪回日誌流量和路由到其他記錄器(即log4j的或的logback)。 要做到這一點,在ESAPI.properties:ESAPI.Logger = org.owasp.esapi.reference.JavaLogFactory
另一種選擇是建立在ESAPI記錄器接口的SLF4J記錄器代理。在這種情況下,我認爲你失去了更多的功能。
相關問題
- 1. 笨的活動記錄需要幫助
- 2. 需要GridView記錄更新幫助
- 3. 需要幫助,以顯示記錄
- 4. 需要顯示記錄的幫助
- 5. 需要幫助的錄音
- 6. 需要幫助
- 7. 需要幫助
- 8. 需要幫助
- 9. 需要HTML textarea標記幫助
- 10. 需要網絡幫助的標記
- 11. 需要javascript幫助
- 12. GetShortPathName需要幫助
- 13. 需要幫助Ordereddict
- 14. 需要setFilter幫助
- 15. 需要幫助NSFetchRequest
- 16. 需要幫助SQL
- 17. cssSandpaper.js幫助需要?
- 18. SQL幫助需要
- 19. 需要EJB幫助
- 20. 需要幫助javascript
- 21. ehcache幫助需要
- 22. subprocess.Popen幫助需要
- 23. 需要jqgrid幫助
- 24. HttpWebrequest需要幫助
- 25. 需要幫助suPHP
- 26. NSPredicate需要幫助
- 27. 需要JavaScript幫助
- 28. 需要幫助IE8
- 29. 需要JavaScript幫助
- 30. jquery幫助需要
感謝您的回覆,我們很久以前就放棄了OWASP ESAPI記錄器 – Amit
根據不同的應用程序給出了不好的建議。當我寫這篇文章時,我正在研究的這個項目主要是log4j,帶有一點slf4j。因此,將所有內容轉換爲ESAPI日誌記錄纔有意義。我們不需要通用的日誌漏斗。我喜歡你的第一個選擇。 – avgvstvs