如何摆脱Nlog消息中的“\\”?

问题描述 投票:0回答:1

我正在使用Nlog将消息记录到Elasticsearch。消息通常包含文件路径名。 Nlog似乎逃脱了每个文件路径中的“\”字符,我想避免这种情况。 encode =“false”属性不适用于用于配置Elasticsearch目标的“field”标记。有没有其他方法来存储文件路径没有额外的“\”?

elasticsearch nlog
1个回答
0
投票

我已经更彻底地搜索了文档并遇到了替换布局渲染器。以下是我的案例中似乎正在起作用的内容:

<variable name="replacedstring" value="${replace:searchFor=\\:wholeWords=false:replaceWith=/:regex=false:inner=${message}}" />

您只需在Nlog.config文件中定义变量,并在通常使用包含预先修改的字符串(内部属性)的布局的地方使用它。我希望这就是我要找的东西。我也想知道是否可以在同一个变量中定义多个模式。例如,我们想用“/”替换“\”,同时我们想在同一个内部字符串中用“ - ”替换“\ r \ n”。有没有人知道使用这个特定的渲染器是否可行?文档对此一无所知。

© www.soinside.com 2019 - 2024. All rights reserved.