NiFi - 将 MDC 数据添加到默认记录器

NiFi - add MDC data to default logger

我将 NiFi 与内置处理器和自定义处理器结合使用。我需要能够将一些元数据附加到有关生成该日志消息的处理器(包括来自 vanilla/default/built-in 个处理器)的日志消息中。

我能想到的最简单的方法是为记录器配置 MDC。问题是,我看不到在哪里可以配置 NiFi 以使用自定义记录器代替默认记录器。

我确实看到 NiFi 具有可以实现的 ComponentLog 接口,从中我将有足够的上下文信息将元数据附加到我的日志消息中。但是,据我所知,这只能在自定义处理器中实现(实现 ComponentLog 接口而不是使用某些第 3 方记录器)。

有什么办法吗?具体来说,我需要记录(在每条日志消息上)诸如哪个处理器以及该处理器可用的任何变量/属性之类的东西。

我可以通过修改源代码并重新构建它来做到这一点,但我真的不想 change/rebuild NiFi 的一个分支只是为了做到这一点。

感谢任何帮助。

我通过修改 logback.xml 模式解决了这个问题。有用于非默认事物和与 MDC 接口的内置处理程序。

https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html 有一个很好的列表,特别是 X 可以让您从 MDC 获取内容。