mab*_*zer 8 java logging multithreading
在多线程环境中登录的最佳方法和最佳工具是什么,这样每个线程都有自己的记录器实例和单独的文件.这有可能吗?
您可以尝试使用自定义Log4J appender,它将线程id作为参数,并根据线程调用它来过滤消息.即时创建它,将其附加到记录器.
但是这种方法存在多个问题:
我建议你考虑一种更简单的方法:将线程id记录到同一个日志文件中.它快速而简单,log4j有一个%标志.稍后,如果需要,您可以按线程ID grep /拆分日志文件.
更新:
实际上,您可能只有一个自定义appender,它会在新线程记录记录时按需打开日志文件(appender在该线程上下文中执行,只需调用Thread.currentThread().getName()).但是您必须重新实现所有常规日志文件任务(轮换)或将其委托给每个文件的标准appender.
| 归档时间: |
|
| 查看次数: |
4824 次 |
| 最近记录: |