java - ConversionPattern 用于在 JBossFuse/Apache Camel (ops4j) 中记录主机名

标签 java apache-camel jbossfuse ops4j

使用 JBoss Fuse/Apache Camel,写入 org.ops4j.pax.logging.properties 中配置的日志文件,我想记录主机名。

log4j.appender.myapp.layout.ConversionPattern=${host} %d{ISO8601} %p %X{bundle.id} %c{1} %m%n

转换模式${host}中的部分不起作用。

有什么办法可以得到这个吗?是否有类似 %X{host.name} 的内容?

在代码中我读到了有关 HOSTNAMENONCANON 的内容 - 也许我可以访问它?

日志框架是 OPS4j,虽然这些模式看起来与 log4j 类似,但我不确定它们是否以相同的方式工作,或者通过 log4j 记录主机名的方法是否也可以在这里工作(但可能值得一试)。

谢谢维京史蒂夫。

最佳答案

我发现如果您通过 MDC 静态方法进行配置,则可以使用 %X{hostname}:

MDC.put("hostname", xyz);

我不确定这是否是最好的解决方案?对我来说似乎很好(?)。

关于java - ConversionPattern 用于在 JBossFuse/Apache Camel (ops4j) 中记录主机名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20702172/

相关文章:

java - Signjar 不支持 OSX java 版本 "sigalg"的 "1.6.0_37"属性

json - 使用带有 Camel 的 Jackson JSON 库的异常

jbossfuse - Redhat JBoss Fuse 7 是否有公共(public)路线图?

spring-boot - Fuse7 独立功能集,带 Spring Boot

java - RMI - 引用并使用远程对象作为 HashMap 中的 "key"

java - 为 Web 项目构建 Java 提醒

java - Hibernate 用户模型不保存用户角色和角色

java - 当从队列收到消息时如何将json转换为bean

java - Apache Camel 路由拆分器不返回原始消息

java - ActiveMQ 生产者生成堆转储