我只是想知道下面的东西是否存在。
我有一个TCP通信器,它可以与成千上万的设备保持通信。
目前,TCP通信器将所有事件记录在一个日志文件中。
现在,是否可以将与每个设备的通信记录在不同的文件中。每个设备的IMEI编号是不同的。因此,记录器将检查是否存在名称等于设备的IMEI编号的文件。如果该文件存在,logger将开始在该文件中记录设备的事件,否则它将创建一个以IMEI作为文件名的新文件,并开始在该文件中记录事件。
(我们正在用Java开发应用程序。)
发布于 2011-08-23 23:57:05
LogBack就是未来,它就在这里!
logback是作为log4j的继任者创建的,并且完全符合slf4j框架,它可能是满足您的需求的最简单(且干净)的方法。
我不是专家,但我猜SiftingAppender可能是正确的答案。应该有一个针对您的鉴别器选项。也许你可以构建自己的鉴别器,扩展SiftingAppender,或者从Janino库中获得一些额外的帮助。
希望这能有所帮助!
发布于 2011-08-23 22:02:19
如果您自己实现了记录器,那么没有什么可以阻止您这样做。
例如,将log函数作为参数提供给您当前正在与之通信的设备的编号,并按照您所描述的方式实现它。
发布于 2011-08-23 22:41:10
如果您使用的是我强烈推荐的Apache log4j,那么通过扩展AppenderSkeleton并为各个连接编写惟一的文件来创建自定义日志附加器就像使用变量文件名执行标准文件I/O一样简单。
https://stackoverflow.com/questions/7162129
复制相似问题