# 日志記錄
* * * * *
--: 作者:Fuzz
時間:2019年1月28日
* * * * *
## 引擎配置設置 multifile
~~~
logs.SetLogger(logs.AdapterMultiFile,`{"filename":"log/project.log","level":7,"maxlines":0,"maxsize":0,"daily":true,"maxdays":10,"separate":["emergency"]}`)
~~~
主要的參數如下說明(除 separate 外,均與file相同):
* filename 保存的文件名
* maxlines 每個文件保存的最大行數,默認值 1000000
* maxsize 每個文件保存的最大尺寸,默認值是 1 << 28, //256 MB
* daily 是否按照每天 logrotate,默認是 true
* maxdays 文件最多保存多少天,默認保存 7 天
* rotate 是否開啟 logrotate,默認是 true
* level 日志保存的時候的級別,默認是 Trace 級別
* perm 日志文件權限
* separate 需要單獨寫入文件的日志級別,設置后命名類似 test.error.log
### 輸出文件名和行號
~~~
beego.SetLogFuncCall(true) //記文件名和行號,Beego日志記錄默認不輸出行號
~~~
### 錯誤等級 **級別依次降低**
~~~
LevelEmergency 等級緊急 [M]
LevelAlert 等級警報 [A]
LevelCritical 等級嚴重 [E]
LevelError 等級錯誤 [W]
LevelWarning 等級警告 [N]
LevelNotice 等級通知 [I]
LevelInformational 級別信息 [D]
LevelDebug 級別調試 [I]
~~~
### 使用方式 Debug
1.函數執行方式時記錄執行的方法名稱,以及用戶id

2.函數中調用方法在函數中記錄操作


3.接口返回信息記錄(接口返回結構跟處理結果不一樣的則需要手寫記錄信息,返回信息中包含結果則Rj方法中會自動記錄)

### 使用方式 Error
1.執行函數返回錯誤信息,程序不報錯的使用error記錄,需要記錄判斷錯誤的條件
