×
新网 > 主机-资讯 > 正文

Photon Server游戏服务器从零开始学习(二) Log日志文件配置与输出

在上一章我们学习有关Photon Server的配置,这章我们开始学习Log日志文件配置与输出一、Log日志的打开在Photon中点击Open Logs选项,打开BareTail软件,相当于一个记事本,用于Log日志的输出。打开以后的界面二、Log日志的输出1.引用log4net.dll 和ExitGames.Logging.Log4Net.dll,位于lib文件夹下。2.添加配置文件,由于有固定的

在上一章我们学习有关Photon Server的配置,这章我们开始学习Log日志文件配置与输出

timg (90).jpg

一、Log日志的打开

在Photon中点击Open Logs选项,打开BareTail软件,相当于一个记事本,用于Log日志的输出。

打开以后的界面

二、Log日志的输出

1.引用log4net.dll 和ExitGames.Logging.Log4Net.dll,位于lib文件夹下。

2.添加配置文件,由于有固定的格式,因此我们在src-serverMmoPhoton.MmoDemo.Server文件夹下复制一份log4net.config文件放在我们项目的根目录下,修改属性为始终复制。

配置文件路径 Photon:ApplicationLogPath,修改为自己的程序名MyGame。

<file type="log4net.Util.PatternString" value="%property{Photon:ApplicationLogPath}\\MyGame.Server.log" />

3.在主类MyGameServer中添加一个静态只读字段log并初始化

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Photon.SocketServer; using ExitGames.Logging; using ExitGames.Logging.Log4Net; using System.IO; using log4net.Config; namespace MyGamePhotonServer { //所有的server端 主类都要集成自applicationbase public class MyGameServer:ApplicationBase { public static readonly ILogger log = LogManager.GetCurrentClassLogger(); /// <summary> /// 刚一个客户端请求连接的 /// </summary> /// <param name="initRequest"></param> /// <returns></returns> protected override PeerBase CreatePeer(InitRequest initRequest) { log.Info("一个客户端连接过来了。。。。"); return new MyClientPeer(initRequest); } /// <summary> /// 初始化 /// </summary> protected override void Setup() { // 日志的初始化 log4net.GlobalContext.Properties["Photon:ApplicationLogPath"] = Path.Combine( Path.Combine(this.ApplicationRootPath, "bin_Win64"), "log"); FileInfo configFileInfo = new FileInfo( Path.Combine( this.BinaryPath ,"log4net.config")); if (configFileInfo.Exists) { LogManager.SetLoggerFactory(Log4NetLoggerFactory.Instance);//让photon知道使用的是Log4NetLog插件 XmlConfigurator.ConfigureAndWatch(configFileInfo);//让log4net这个插件读取配置文件 } log.Info("初始化完成!"); } /// <summary> /// server端关闭的时候 /// </summary> protected override void TearDown() { log.Info("服务器应用关闭了"); } } }

运行后的日志输出结果

 

  • 相关专题

免责声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,也不承认相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,请发送邮件至:operations@xinnet.com进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

免费咨询获取折扣

Loading