[英]How to set JsonTemplateLayout eventTemplateUri outside of classpath in Log4j2
在 Log4j2 的 JsonTemplateLayout 中,使用 eventTemplateUri: "classpath:LayoutTemplate.jsson" 和位于 rc/main/resources 中的 json 文件没有问题。 但是,我需要将此文件保存在 class 路径之外。 所以我想使用类似于我们添加日志文件名的方式的文件位置:c:\...
但是当我使用 eventTemplateUri: "C:\....\LayoutTemplate.json" 时它会抛出一个错误
rror message is " Could not create plugin of type class org.apache.logging.log4j.layout.template.json.JsonTemplateLa yout for element JsonTemplateLayout: java.lang.RuntimeException: failed reading URI: C:... Did I miss anything在这里?是否可以将此 json 文件放在 class 路径之外?
谢谢!
JsonTemplateLayout
中的所有*Uri
配置旋钮都需要一个 URI 字符串。 在您的情况下,缺少 URI方案。 在您的情况下, eventTemplateUri
应该类似于file:///C:/path/to/LayoutTemplate.json
。 有关内部结构,请参阅oallltemplate.json.util.Uris.readUri(String,Charset)
是如何实现的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.