運營后台操作日志(web)思路+實現


今天產品給我給我提了一個需求,要求我添加操作日志,記錄登錄人對運營后台的操作詳細過程,本人菜鳥一枚,記錄一下我的思路和過程,等我成為大佬的時候方便自我吐槽!。

產品要求:

  要求:

    1、要求記錄操作人的名字,操作電腦的ip

    2、記錄操作內容

  目的:

    方便追溯責任,比如某管理員,審核了某個用戶的申請,屏蔽了某個人的圖片,凍結了某個用戶等。當出問題的時候我們能拿出證據。

我的思路:

  開始的時候我是完全按照產品需求做。步驟是這樣的:

    1、自定義注解,兩個參數:操作描述(description),操作類型:(type)

    2、用Java的aop對每個controller攔截

    3、在每個controller添加注解

    類似這樣

@SaveOperateControllerLog(descrption = "聊天室管理 => 公會列表==>新增或者編輯工會營業執照", actionType = 1)
@RequestMapping("/updateClubBiz")
public Result updateClubBiz(@RequestBody PlatformEntryClub club) {
try {
return Result.ok(clubService.updateClubBiz(club));
} catch (Exception e) {
log.error("錯誤信息:{}",e);
return Result.error(ResultCode.ERROR.getCode(),ResultCode.ERROR.getMessage());
}
}


天真的我以為這樣就可以了,但是產品說這個不行,讓我好好思考下我們做操作日志的目的,想想日志該怎么記錄。這里我反思了自己,我在一個小公司,我不知道大廠提需求是怎么樣的,我們公司會產品口頭表述,然后出一份簡單的原型。而我就死板的照着原型做,其實這是不對的,我認為不管在大廠還是小公司,產品需求多么的詳細,原型多么的完美,作為具體操作的者的我們都應該反復的思考一下,這樣是否可行,這樣做的目的是什么(或者說功能是啥)、是否有可以改進的地方等等,最后才考慮我該怎么去實現這個功能。不然等你代碼寫好了,自己在洋洋得意的時候,突然發現自己寫的代碼不對,或者說不能完全滿足需求。就算你和需求一樣,產品一句話你還不是要改。同事有句話說得好:是你的需求始終是你的,如果能一次寫好是最好的,改來改去誰都煩,主要是再煩你還不是要改。偏了,下面繼續。

在百度上看了很多例子后的思路:

  在之前的基礎上添加:添加請求參數、訪問方法名、方法參數、返回結果、執行時間等,我以為這次完美了,但是並沒有,參數是全面了,但是可讀性不強,程序員能看懂,但是產品看着就很吃力了。所以下面就寫我第三次更改后的代碼,其實我寫這篇博客的時候(2019年11月30日01:44:11)第三版本代碼還沒有寫,准備今天晚上寫個demo測試下,明天添加到我的分支上。有時間在同步博客。菜鳥程序員不配擁有周末!!!!!!!!

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM