ProjectLog - ScutGame/Scut GitHub Wiki

此章节介绍如何查看服务端异常日志

Nlog日志组件

Scut使用Nlog第三方日志跟踪组件,服务端的跟踪日志信息会根据配置的日志级别分别输出到不同的目录中。

在项目中如果使用VS开发工具调试或启动程序,它默认的运行路径在./bin/debug/目录下的,为了保持与直接运行GameServer.exe使用相同的运行路径;我们可以在项目属性中“调试”项设置“工作目录”为"../../",由/bin/debug/目录切换到./目录下。

配置文件

配置文件在项目的相对目录名为Nlog.config的文件,如下配置:

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <variable name="logDirectory" value="D:\NLog\DirCenterLog"/>
  <targets>
    <target name="Info" xsi:type="File" fileName="${logDirectory}/Info/${date:format=yyyyMMddHH}.txt" layout="${message}"/>
    <target name="Complement" xsi:type="File" fileName="${logDirectory}/Complement/${date:format=yyyyMMddHH}.txt" layout="${message}"/>
    <target name="Debug" xsi:type="File" fileName="${logDirectory}/Debug/${date:format=yyyyMMddHH}.txt" layout="${message}"/>
    <target name="Exception" xsi:type="File" fileName="${logDirectory}/Exception/${date:format=yyyyMMddHH}.txt" layout="${message}"/>
    <target name="Fatal" xsi:type="File" fileName="${logDirectory}/Fatal/${date:format=yyyyMMddHH}.txt" layout="${message}"/>
  </targets>
  <rules>
    <logger name="*" level="Info" writeTo="Info"/>
    <logger name="*" level="Trace" writeTo="Complement"/>
    <logger name="*" level="Debug" writeTo="Debug"/>
    <logger name="*" level="Error" writeTo="Exception"/>
    <logger name="*" level="Fatal" writeTo="Fatal"/>
  </rules>
</nlog>

参数说明

  • logDirectory:输出的Log目录路径;
  • target:日志级别(Info,Trace,Debug,Error,Fatal)各自文件输出位置和格式配置;
  • logger:配置各日志输出的级别,不配置则不输出;
⚠️ **GitHub.com Fallback** ⚠️