首页 > 系统相关 >多进程log4cxx区分日志

多进程log4cxx区分日志

时间:2023-06-15 23:06:26浏览次数:48  
标签:帐号 MDC 区分 进程 日志 log4cxx


多进程log4cxx区分日志


(金庆的专栏)


网游客户端一般会多开,多个进程会写同一个日志文件。log4cxx看来会对文件加锁,防止多进程写同一文件写乱,截止目前还没发现错乱的日志。

log4cxx有个MDC(Mapped Diagnostic Context) 功能,可以区分不同进程的日志。

在日志格式中插入帐号名,就可以区分不同帐号的日志。

格式如下,其中%X{Account} 为MDC记录的帐号名。

 

<param name="ConversionPattern" value="%d %5p %X{Account} %c %x - %m%n"/>

在获取帐号后记录MDC:

log4cxx::MDC::put("Account", sAccount);

日志输出如下: 其中JqAas为帐号:

 

2014-03-28 16:38:12,012  INFO JqAas Lua  - Create scene.


标签:帐号,MDC,区分,进程,日志,log4cxx
From: https://blog.51cto.com/u_16162321/6495477

相关文章

  • 解决log4cxx退出时的异常
    解决log4cxx退出时的异常(金庆的专栏)如果使用log4cxx的FileWatchdog线程来监视日志配置文件进行动态配置,就可能碰到程序退出时产生的异常。程序退出时清理工作耗时很长时,该异常很容易出现。原因是main()之后FileWatchdog线程试图checkAndConfigure()检......
  • 自建log4cxx.sln
    log4cxx的下载包是0.10版本的,代码较旧,有些错误,应该从主干下载最新的代码. 0.10的下载包中有projects目录,内有VC6的工程文件;还有site目录,内有vc构建的帮助文档vstudio.html.VC构建步骤如下:unzipapr-1.2.11-win32-src.ziprenameapr-1.2.11aprunzipapr-util-1.2.10-win32-src.z......
  • QA|如何给我们的自动化测试代码增加日志记录?|Loguru
    这里我们用的是loguru,logging虽然是自带的,但确实使用起来比较繁琐,loguru在Logging基础上增加了很多个性化功能,使用起来也比较简单,所以就使用loguru代码如下:1#cal_testlog.py23fromloguruimportlogger4fromconfigimportBASE_DIR5importtime67now_dt......
  • RPG游戏开发日志:
      2023年3月份玩了个怪物猎人崛起,之前接触的是狩猎时刻,刚刚玩怪物猎人时候用手柄不太适应,游戏里没啥剧情,一些NPC,还有一些任务,一直猫可以做治疗,辅助,和攻击,狗可以当坐骑以及攻击,游戏除了一些怪物之外,能采集还有竞技场百龙夜行等,游戏很棒,也很难,一个怪打好久,而狩猎时刻是手机游......
  • 基于Spark的大规模日志分析
    摘要:本篇文章将从一个实际项目出发,分享如何使用Spark进行大规模日志分析,并通过代码演示加深读者的理解。本文分享自华为云社区《【实战经验分享】基于Spark的大规模日志分析【上进小菜猪大数据系列】》,作者:上进小菜猪。随着互联网的普及和应用范围的扩大,越来越多的应用场景需要对......
  • SpringBoot使用自定义的logback日志
    1.介绍描述:主要由三个模块构成logback-core:核心代码块(不介绍)logback-classic:实现了slf4j的api,加入该依赖可以实现log4j的api。logback-access:访问模块与servlet容器集成提供通过http来访问日志的功能(也就是说不需要访问服务器,直接在网页上就可以访问日志文件,实现HTTP访问......
  • SpringBoot使用自定义日志注解,配置切面
    1.使用技巧以下是需要注意的部分:在环绕通知中使用ProceedingJoinPoint,控制目标方法的运行。在其他通知类型中使用JoinPoint。如果使用JoinPoint则必须位于参数的第一位。ProceedingJoinPoint中有特殊的方法proceed()。当有多个切面时,使用@Order(11)来指定注解的优先级。......
  • Python基础之subprocess模块、hashlib模块、日志模块
    subprocess模块tasklist:列举出来文件进程命令"""1.以后我们可以用自己的电脑连接上别人的电脑(socket)2.通过subprocess可以在别人的计算机上执行我们想要执行的命令3.把在别人计算机上执行的结果给返回过来"""importsubprocessimportsubprocessres=subprocess.P......
  • Serilog 日志加密
    1.安装Serilog.Sinks.FileNuget包2.重写FileLifecycleHooks(使用加密流)或者重写ITextFormatter在里面加密publicclassEncryLifecycleHooks:FileLifecycleHooks{///<summary>///是否加密///</summary>publicboolIsEncrypti......
  • 快速了解常用日志技术(JCL、Slf4j、JUL、Log4j、Logback、Log4j2)
    一、快速了解常用日志技术(JCL、Slf4j、JUL、Log4j、Logback、Log4j2)二、log4j2配置文件log4j2.xml文章目录一、简介二、日志门面三、SpringBoot使用Log4j2进行日志输出同步日志1、排除logback日志、导入log4j2依赖2、导入自定义log4j2.xml配置文件3.基础log4j2.xml配置文件异......