java編程 java開(kāi)發(fā)怎么做日志功能就是記錄用戶每一步的操作具體做什么了?
java開(kāi)發(fā)怎么做日志功能就是記錄用戶每一步的操作具體做什么了?具體來(lái)說(shuō),挺麻煩的。我給你一個(gè)想法:如果你想記錄和查看操作日志,你必須將操作日志直接保存到數(shù)據(jù)庫(kù)中。日志管理模塊,由于上面有日志記錄,做
java開(kāi)發(fā)怎么做日志功能就是記錄用戶每一步的操作具體做什么了?
具體來(lái)說(shuō),挺麻煩的。我給你一個(gè)想法:如果你想記錄和查看操作日志,你必須將操作日志直接保存到數(shù)據(jù)庫(kù)中。日志管理模塊,由于上面有日志記錄,做一個(gè)刪除功能應(yīng)該很容易做到。我不想詳細(xì)說(shuō)明。最重要的是:如何記錄日志。其思想是:首先分析哪些日志需要記錄,一般記錄數(shù)據(jù)的添加、修改和刪除操作。此外,還應(yīng)記錄一些特殊的查詢操作。其實(shí),怎么錄。一開(kāi)始,我們討論了日志存儲(chǔ)?,F(xiàn)在的問(wèn)題是,什么時(shí)候才能做出一個(gè)邏輯。這個(gè)時(shí)間通常是訪客啟動(dòng)操作的時(shí)候。例如,開(kāi)始在相應(yīng)的方法體中記錄操作、servlet或控制器。當(dāng)然,我們需要編寫(xiě)日志存儲(chǔ)的邏輯。其實(shí),這個(gè)日志管理是一個(gè)比較完整的功能塊,甚至是一個(gè)很小的系統(tǒng)。還有許多小細(xì)節(jié)和解決方案。有了想法,如何實(shí)現(xiàn)就要看情況了。
運(yùn)維日志太多,不方便查看怎么辦?
一個(gè)非常好的問(wèn)題。日志是軟件系統(tǒng)中不可缺少的一部分,尤其是在生產(chǎn)環(huán)境中。一旦出現(xiàn)問(wèn)題,日志中的錯(cuò)誤信息會(huì)觸發(fā)預(yù)警系統(tǒng),然后通過(guò)電子郵件、短信甚至電話通知等方式向系統(tǒng)負(fù)責(zé)人發(fā)出報(bào)警。
在故障排除和修復(fù)階段,開(kāi)發(fā)人員和測(cè)試人員通常檢查系統(tǒng)日志以分析故障原因。
Elk是一個(gè)常見(jiàn)的日志管理系統(tǒng),包括elasticsearch、logstash和kibana服務(wù)。架構(gòu)圖如下:
以Java spring boot開(kāi)發(fā)為例,spring boot集成logback,通過(guò)logback將日志發(fā)送到logstash,收集操作信息。
在麋鹿系統(tǒng)中,kibana是一個(gè)圖形顯示工具。操作、維護(hù)和開(kāi)發(fā)可以根據(jù)配置的查詢條件搜索指定的日志信息。
我作為web應(yīng)用程序架構(gòu)師工作了很多年。請(qǐng)關(guān)注我,了解更多。