<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                [TOC] # 日志處理 這是一個用來處理日志的庫,它的設計思路來自于 `database/sql`,目前支持的引擎有 file、console、net、smtp,可以通過如下方式進行安裝: go get github.com/astaxie/beego/logs ## 如何使用 首先引入包: import ( "github.com/astaxie/beego/logs" ) 然后初始化 log 變量(10000 表示緩存的大小): log := logs.NewLogger(10000) 然后添加輸出引擎(log 支持同時輸出到多個引擎),這里我們以 console 為例,第一個參數是引擎名(包括:console、file、conn、smtp),第二個參數表示配置信息,詳細的配置請看下面介紹: log.SetLogger("console", "") 然后我們就可以在我們的邏輯中開始任意的使用了: log.Trace("trace %s %s","param1","param2") log.Debug("debug") log.Info("info") log.Warn("warning") log.Error("error") log.Critical("critical") ## 輸出文件名和行號 日志默認不輸出調用的文件名和文件行號,如果你期望輸出調用的文件名和文件行號,可以如下設置 log.EnableFuncCallDepth(true) 開啟傳入參數true,關閉傳入參數false,默認是關閉的. 如果你的應用自己封裝了調用log包,那么需要設置SetLogFuncCallDepth,默認是2,也就是直接調用的層級,如果你封裝了多層,那么需要根據自己的需求進行調整. log.SetLogFuncCallDepth(3) ## 異步輸出日志 為了提升性能, 可以設置異步輸出: log.Async() ## 引擎配置設置 - console 可以設置輸出的級別,或者不設置保持默認,默認輸出到 `os.Stdout`: log := NewLogger(10000) log.SetLogger("console", `{"level":1}`) - file 設置的例子如下所示: log := NewLogger(10000) log.SetLogger("file", `{"filename":"test.log"}`) 主要的參數如下說明: - filename 保存的文件名 - maxlines 每個文件保存的最大行數,默認值 1000000 - maxsize 每個文件保存的最大尺寸,默認值是 1 << 28, //256 MB - daily 是否按照每天 logrotate,默認是 true - maxdays 文件最多保存多少天,默認保存 7 天 - rotate 是否開啟 logrotate,默認是 true - level 日志保存的時候的級別,默認是 Trace 級別 - perm: 日志文件權限 - conn 網絡輸出,設置的例子如下所示: log := NewLogger(1000) log.SetLogger("conn", `{"net":"tcp","addr":":7020"}`) 主要的參數說明如下: - reconnectOnMsg 是否每次鏈接都重新打開鏈接,默認是 false - reconnect 是否自動重新鏈接地址,默認是 false - net 發開網絡鏈接的方式,可以使用 tcp、unix、udp 等 - addr 網絡鏈接的地址 - level 日志保存的時候的級別,默認是 Trace 級別 - smtp 郵件發送,設置的例子如下所示: log := NewLogger(10000) log.SetLogger("smtp", `{"username":"beegotest@gmail.com","password":"xxxxxxxx","host":"smtp.gmail.com:587","sendTos":["xiemengjun@gmail.com"]}`) 主要的參數說明如下: - username smtp 驗證的用戶名 - password smtp 驗證密碼 - host 發送的郵箱地址 - sendTos 郵件需要發送的人,支持多個 - subject 發送郵件的標題,默認是 `Diagnostic message from server` - level 日志發送的級別,默認是 Trace 級別 - ElasticSearch 輸出到 ElasticSearch: log := NewLogger(10000) log.SetLogger("es", `{"dsn":"http://localhost:9200/","level":1}`)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看