PhotonServer中日志的配置
1.添加引用log4net.dll和ExitGames.Logging.Log4Net.dll
2.在项目中添加一个log4net的config文件,并且在PhotonServer的src下面的MMo下面的Server下面的log4net.config的内容复制给我们项目中刚才添加的。
上图config中的内容是需要更改的
3.并且将复制到输入目录设置为始终复制
4.更改config配置。将value后面那块圈出来的位置,改成自己的deploy中创建的文件夹的名字,我自己的是RRGameServer
把config的配置复制给大家吧
<?xml version="1.0" encoding="utf-8" ?>
<log4net debug="false" update="Overwrite"><appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"><file type="log4net.Util.PatternString" value="%property{Photon:ApplicationLogPath}\\RRGameServer.Server.log" /><appendToFile value="true" /><maximumFileSize value="5000KB" /><maxSizeRollBackups value="2" /><layout type="log4net.Layout.PatternLayout"><conversionPattern value="%d [%t] %-5p %c - %m%n" /></layout></appender><appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" /></layout><filter type="log4net.Filter.LevelRangeFilter"><levelMin value="DEBUG" /><levelMax value="FATAL" /></filter></appender><!-- logger --><root><level value="INFO" /><!--<appender-ref ref="ConsoleAppender" />--><appender-ref ref="RollingFileAppender" /></root><logger name="OperationData"><level value="INFO" /></logger></log4net>
5.在MyGameServer中配置
MyGameServer.cs:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ExitGames.Logging;
using ExitGames.Logging.Log4Net;
using log4net.Config;
using Photon.SocketServer;namespace RRGameServer
{//所有的Server,都要继承ApplicationBase,然后实现ApplicationBase的三个方法public class MyGameServer : ApplicationBase{private static readonly ILogger log = LogManager.GetCurrentClassLogger();//当有一个客户端连接上以后,就会执行此方法protected override PeerBase CreatePeer(InitRequest initRequest){log.Info("一个客户端连接");return new ClientPeer(initRequest);}//服务器初始化函数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知道日志输出XmlConfigurator.ConfigureAndWatch(configFileInfo);//读取配置}log.Info("服务器启动啦");}//服务器关闭函数protected override void TearDown(){log.Info("服务器关闭啦");}}
}
6.重新生成dll文件,并且全部复制
7.启动我们的photonServer,在关闭,然后查看日志
成功配置(●'◡'●)
对了最后附上xmind图,具体流程结合前面几篇一起看哦
PhotonServer中日志的配置相关推荐
- mysql配置日志老化配置_mysql中日志的配置与分析
默认情况下,如果日志没有配置,则只记录错误日志,记录到syslog,配置文件 /etc/mysql/conf.d/mysqld_safe_syslog.cnf (ubuntu下) [mysqld_sa ...
- 在Tomcat 与weblogic 中的 日志(log4j) 配置系列三(log文件的存放路径)
前言 前面一直在说,如何读取到log4j 的配置文件 log4j.properties. 接下来的探讨的是: log4j 里配置产生的log 文件的路径如何设置. tomcat 还好.拿复杂点的 we ...
- 在Tomcat 与weblogic 中的 日志(log4j) 配置系列二(weblogic 应用程序使用log4j)
前言 在Tomcat 与weblogic 中的 日志(log4j) 配置系列一 在系列一 中, 有一个问题一直没有解决,就是部署到weblogic 中应用程序如何通过log4j写日志到文件中? 这里仅 ...
- 【日常记录】错误“应用程序无法启动,因为应用程序中的并行配置不正确,有关详细信息,请参阅应用程序事件日志,或使用命令行sxstrace.exe工具”解决办法
win10安装理正深基坑软件出现该错误 错误"应用程序无法启动,因为应用程序中的并行配置不正确,有关详细信息,请参阅应用程序事件日志,或使用命令行sxstrace.exe工具"解决 ...
- java spring 配置log_spring-logger spring中日志配置
默认日志 Logback: 默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台.在运行应用程序和其他例子时,你应该已经看到很多INFO级别的日志了. 从上图可 ...
- linux日志服务器配置在哪个文件,Linux中日志的基本配置(syslog)
Syslog日志的作用: syslog 日志可以帮我们主动的收集到设备的各种信息,并保存在syslog服务器上,当某些设备出现故障的时候,我们可以省去手动收集信息的麻烦,方便快捷的从syslog服务器 ...
- CentOs6.5中安装和配置vsftp简明教程
这篇文章主要介绍了CentOs6.5中安装和配置vsftp简明教程,需要的朋友可以参考下 一.vsftp安装篇 复制代码代码如下: # 安装vsftpd yum -y install vsftpd # ...
- Linux系统中FTP的配置(图文详解-全)
Linux系统中FTP的配置 二. 把安全级别调低 #vi /etc/selinux/config 注意:在RHEL4三.FTP软件包 #mount /d ...
- JBoss日志文件配置
一篇关于JBoss日志配置的文章 有一个项目,可能前期代码不太规范,导致大量的调试语句通过打印或其它的一些方式显示出来.又因为log4j的日志级别设置成了INFO,所以导致产生的日志巨大,而且每天生成 ...
最新文章
- mysql server_id作用_在MySQL中设置`server-id`变量不起作用
- .NET字符串操作类StringHelper (C#版)
- scp时候出现ssh Connection refused的解决方案
- Oracle 裁员史:技术人死于重组,卒于云计算
- vue.js框架原理浅析
- wxWidgets:wxSplitterWindow 示例
- eclipse php xdebug,Eclipse for php + Xdebug搭建PHP的调试环境
- java hasnext_java hasNext()使用实例解析
- Xcode编译后运行程序Killed: -9,因为签名有问题
- zkeposx消费管理系统mysql_ZKEposx消费管理系统
- CSS display属性 – 不显示、显示表格、内联块等
- 使用vue 开发chrome 插件
- ToString格式转换大全(1)
- oracle预收核销,Oracle EBS AP 应付核销到确定一行预付款
- Typora入门手册
- 5G消息RCS富媒体通信与传统短信相比有何特色?
- re_mysql_20221210
- Android开发扫一扫功能,Android使用ZXing实现扫码功能
- Leetcode 1087. Brace Expansion
- Android P userdebug模式获取adb root adb remount 无权限 remount失败