github.com/zhongdalu/gf@v1.0.0/g/net/ghttp/ghttp_server_config_logger.go (about)

     1  // Copyright 2017 gf Author(https://github.com/zhongdalu/gf). All Rights Reserved.
     2  //
     3  // This Source Code Form is subject to the terms of the MIT License.
     4  // If a copy of the MIT was not distributed with this file,
     5  // You can obtain one at https://github.com/zhongdalu/gf.
     6  
     7  package ghttp
     8  
     9  import (
    10  	"github.com/zhongdalu/gf/g/os/glog"
    11  )
    12  
    13  // 设置日志目录,只有在设置了日志目录的情况下才会输出日志到日志文件中。
    14  // 日志文件路径格式为:
    15  // 1. 请求日志: access/YYYY-MM-DD.log
    16  // 2. 错误日志: error/YYYY-MM-DD.log
    17  func (s *Server) SetLogPath(path string) {
    18  	if s.Status() == SERVER_STATUS_RUNNING {
    19  		glog.Error(gCHANGE_CONFIG_WHILE_RUNNING_ERROR)
    20  		return
    21  	}
    22  	if len(path) == 0 {
    23  		return
    24  	}
    25  	s.config.LogPath = path
    26  	s.logger.SetPath(path)
    27  }
    28  
    29  // 设置日志内容是否输出到终端,默认情况下只有错误日志才会自动输出到终端。
    30  // 如果需要输出请求日志到终端,默认情况下使用SetAccessLogEnabled方法开启请求日志特性即可。
    31  func (s *Server) SetLogStdout(enabled bool) {
    32  	if s.Status() == SERVER_STATUS_RUNNING {
    33  		glog.Error(gCHANGE_CONFIG_WHILE_RUNNING_ERROR)
    34  		return
    35  	}
    36  	s.config.LogStdout = enabled
    37  }
    38  
    39  // 设置是否开启access log日志功能
    40  func (s *Server) SetAccessLogEnabled(enabled bool) {
    41  	if s.Status() == SERVER_STATUS_RUNNING {
    42  		glog.Error(gCHANGE_CONFIG_WHILE_RUNNING_ERROR)
    43  		return
    44  	}
    45  	s.config.AccessLogEnabled = enabled
    46  }
    47  
    48  // 设置是否开启error log日志功能
    49  func (s *Server) SetErrorLogEnabled(enabled bool) {
    50  	if s.Status() == SERVER_STATUS_RUNNING {
    51  		glog.Error(gCHANGE_CONFIG_WHILE_RUNNING_ERROR)
    52  		return
    53  	}
    54  	s.config.ErrorLogEnabled = enabled
    55  }
    56  
    57  // 设置日志写入的回调函数
    58  func (s *Server) SetLogHandler(handler LogHandler) {
    59  	if s.Status() == SERVER_STATUS_RUNNING {
    60  		glog.Error(gCHANGE_CONFIG_WHILE_RUNNING_ERROR)
    61  		return
    62  	}
    63  	s.config.LogHandler = handler
    64  }
    65  
    66  // 获取日志写入的回调函数
    67  func (s *Server) GetLogHandler() LogHandler {
    68  	return s.config.LogHandler
    69  }
    70  
    71  // 获取日志目录
    72  func (s *Server) GetLogPath() string {
    73  	return s.config.LogPath
    74  }
    75  
    76  // access log日志功能是否开启
    77  func (s *Server) IsAccessLogEnabled() bool {
    78  	return s.config.AccessLogEnabled
    79  }
    80  
    81  // error log日志功能是否开启
    82  func (s *Server) IsErrorLogEnabled() bool {
    83  	return s.config.ErrorLogEnabled
    84  }