问题标签 [mdc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
669 浏览

scala - akka 是否将 MDC 从源演员复制到其他演员和期货?

正如我在 akka 规范中所读到的,它支持演员中的 mdc。例如,我可以将 unic 信息放在 mdc 中,然后在 actor 中使用它。但是期货呢?akka 是否提供任何保证,即在 actor 中发起的未来将具有相同的 mdc?另外,发送给其他参与者的消息怎么样 - 默认情况下会复制 MDC 吗?

笔记

对我来说,这看起来很奇怪,我只能在一个演员代码中使用 MDC。

0 投票
1 回答
823 浏览

java - 为什么我的 MDC SLF4J 中有两个请求的重复 ID?

我有一个网络应用程序。我的应用程序由Tomcat. 我通过以下代码编写了一个Servlet Filter用于将一些数据放入MDC类中:SLF4J

MDC.put("Id", UUID.randomUUID().toString();

当我为第二个或第三个请求运行我的应用程序时,我得到了重复的 UUID。这种情况是串行的,不是并发的。我认为存在一个线程上下文不明确的线程池。

0 投票
1 回答
3515 浏览

java - 如何使用 MDC 在 log4j2 中动态创建日志文件名

我正在尝试根据通过MDCin log4j 传递的值生成不同的日志文件。尝试了几种方法后,我无法工作。

这就是我要做的事情。

在 java 代码中。我在MDC.

在 log4j2.xml 中,我试图通过执行将日志路由到适当的文件 <

appid这里,的值uid 是根据传入的 http 标头(通过 MDC)正确填充的。但是,我希望日志文件名是,special.log但文件生成为${ctx:APPNAME}.log

我也尝试通过System.setProperty("APPNAME","special")使用并引用它来设置 APPNAME,${sys:APPNAME}但我没有得到预期的结果。

任何关于如何解决此问题的想法将不胜感激。

0 投票
0 回答
89 浏览

spring - 使用 slf4j 的自定义日志语句

我需要记录类似下面的语句,其中日志语句包含一些配置的自定义值。我在春季批处理的上下文中使用日志记录。所以我想通过运行的作业来区分日志语句。示例作业 1 和作业 2 并行运行,因此日志应如下所示,

我检查了 MDC - org.slf4j.MDC 但似乎无助于按作业区分日志。

请帮忙,在此先感谢!

0 投票
1 回答
51 浏览

cassandra - Cassandra 源 -> 接收器复制

可以在数据中心 (DC) 之间组织一种方式的复制。假设我们有两个 DC:A 和 B。我希望将写入 DC A 中节点的所有数据复制到 DC B,但是写入 DC B 的数据都不应该转到 A。Cassandra 可以吗?

0 投票
0 回答
1372 浏览

java - 用于多线程 Web 服务的 Logback MDC

我在为我的 web 服务实现 MDC 时遇到问题,该服务具有多个 entiti-id 作为输入,然后该服务会逐个访问外部服务。因此,我们为每个单独的实体 ID 创建了一个线程,然后收集所有回复。很难将每个事务的日志条目从外部服务链接到外部服务。为了解决这个问题,我介绍了 MDC 现在,问题是,http 请求正在获取新的correlationId,但内部线程卡在了第一个correlationId 上。为了实现 MDC,我做了这个过滤器:

样本日志:

第一次尝试:

第二次尝试

最后一行来自http,它改变了correlationId,但没有改变子多线程服务调用,它一直是相同的相关ID。

请帮我解决这个问题。

0 投票
1 回答
6736 浏览

java - MDC 无法与 Log4j 一起正常工作

您好我想在日志模式中显示登录的用户 ID、主机名、IP 地址等。我也在使用 log4j。我正在使用 MDC。在我的主控制器中,我可以看到带有指定模式的日志,但在其他文件日志中我看不到模式,是不是就像我在某个会话中设置了 MDC 并将上下文值再次放入其他控制器中一样?请建议。

log4j.properties

我还有其他不同的控制器。现在主控制器内的记录器语句在日志模式中显示上下文信息,但在其他控制器的其他日志消息中它不显示上下文信息。

我的问题。1.我需要在所有控制器中添加上下文信息吗?2.有没有更好的方法?3.我错过了什么吗?

0 投票
1 回答
4475 浏览

java - 使 logback 模式部分可选?

是否可以根据属性制作部分 logbacks 模式布局?例如,仅在 %X{bdid} 存在的情况下显示 bdid (...)?

这个附加器

印刷

bdid(0b5d3877-f3dd-4189-8b1b-489c8b617f2a) 18:22:25.206如果 bdid 存在,但打印

bdid() 18:22:20.928如果没有。

如何在我的日志中省略空的 bdid()?

0 投票
1 回答
1109 浏览

apache-camel - 卷下的骆驼 MDC Logback 陈旧信息

我们有一个高负载的 Apache Camel 应用程序,它利用 logback/MDC 来记录信息。我们发现一些 MDC 信息在线程上已经过时,正如 logback 文档中预先警告的那样。我发现这个 SO question 解决了这个问题:

如何将 MDC 与线程池一起使用?

我们应该如何将其应用于我们的骆驼应用程序以避免陈旧信息?如链接问题中所建议的那样,是否可以简单地将默认 ThreadPoolExecutor 全局更改为自定义变体?我看到您可以为池本身执行此操作,但没有看到执行者的任何示例。请记住,我们的应用程序非常大,并且每天处理大量订单——我希望对现有应用程序的影响尽可能小。

0 投票
1 回答
107 浏览

hadoop - 我可以在没有 IBM Cognos Transformer 的情况下自己编写 mdc 吗?

我想使用 Hadoop/Mapreduce 在 Cognos MDC 文件中生成多维数据集,但似乎 mdc 文件只能由 Cognos Transformer 生成?

那么,我可以在没有 Cognos Transformer 的情况下编写 MDC 文件吗?