Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Log4net转换模式列表_C#_.net_Logging_Log4net - Fatal编程技术网

C# Log4net转换模式列表

C# Log4net转换模式列表,c#,.net,logging,log4net,C#,.net,Logging,Log4net,是否有一个全面的列表,列出了log4net可用的所有转换模式?我甚至在源代码中找不到它们 我所发现的只是;难道不应该有更多的模式吗?例如,如何获取托管应用程序的名称 另外,如何添加自己的模式 作为一个例子,这里是一个可比较的列表,但为 编辑: 我找到了应用程序名称的模式;它是[应用程序]。但我还是在找妈妈。至少有人能给我指出源代码中管理这些的类吗?也许我可以从中找到列表。至于正式的模式列表,我想你已经找到了!:) 至于获取托管应用程序的名称,这不是appdomain转换模式名称吗?不确定为什么需

是否有一个全面的列表,列出了log4net可用的所有转换模式?我甚至在源代码中找不到它们

我所发现的只是;难道不应该有更多的模式吗?例如,如何获取托管应用程序的名称

另外,如何添加自己的模式

作为一个例子,这里是一个可比较的列表,但为

编辑:
我找到了应用程序名称的模式;它是
[应用程序]
。但我还是在找妈妈。至少有人能给我指出源代码中管理这些的类吗?也许我可以从中找到列表。

至于正式的模式列表,我想你已经找到了!:)

至于获取托管应用程序的名称,这不是appdomain转换模式名称吗?不确定为什么需要它,因为重载在a模式中返回应用程序友好的名称…啊…等等,ToString()还包括上下文策略,它们可能是上下文中的额外噪声


至于添加你自己的模式,谷歌返回了10秒。

看起来这个链接已经失效了

我在Waybacktimemachine中找到了它,并将其发布到我的博客上


这可能是太多了,张贴在这里就这样。如果我错了,我会很高兴地在这里发布,如果每个人都同意这不是太糟糕。

Apache log4net SDK文档中的
log4net.Layout.PatternLayout
类的备注部分似乎有我们想要的:

在撰写本文时,该文件是有效的。如果出于任何原因,log4net消失了,那么

如果您不想浏览其他地方,只想查看完整列表(为什么不呢?),您可以在下面找到它:

转换模式名称 影响
a
相当于appdomain的

appdomain
用于输出生成日志事件的AppDomain的友好名称。
aspnet缓存
用于在
%aspnet缓存
的情况下输出所有缓存项,或在用作
%aspnet缓存{key}


的情况下仅输出一个命名项。此模式不适用于精简框架或客户端配置文件程序集。
aspnet上下文
用于在
%aspnet context
的情况下输出所有上下文项,或者在用作
%aspnet context{key}


的情况下仅输出一个命名项。此模式不适用于精简框架或客户端配置文件程序集。
aspnet请求
用于在
%aspnet request
的情况下输出所有请求参数,或者在用作
%aspnet request{key}


的情况下仅输出一个命名参数。此模式不适用于精简框架或客户端配置文件程序集。
aspnet会话
用于在
%aspnet会话
的情况下输出所有会话项,或者在用作
%aspnet会话{key}


的情况下仅输出一个命名项。此模式不适用于精简框架或客户端配置文件程序集。
c
相当于
记录器
C
相当于
类型
class
相当于
类型
d
相当于日期
日期
用于输出本地时区中日志记录事件的日期。要以通用时间输出日期,请使用
%utcdate
模式。日期转换说明符后面可以跟在大括号之间的日期格式说明符后面。例如,
%date{HH:mm:ss,fff}
%date{dd MMM yyyy HH:mm:ss,fff}
。如果未提供日期格式说明符,则假定为ISO8601格式(Iso8601DateFormatter)。

日期格式说明符允许使用与ToString的时间模式字符串相同的语法。

为获得更好的结果,建议使用log4net日期格式化程序。可以使用字符串“ABSOLUTE”、“DATE”和“ISO8601”中的一个来指定这些参数,分别指定AbsoluteTimeDateFormatter、DateTimeDateFormatter和Iso8601DateFormatter。例如,
%date{ISO8601}
%date{ABSOLUTE}


这些专用日期格式化程序的性能明显优于ToString。
例外情况
用于输出随日志消息传入的异常。

如果日志事件中存储了异常对象,则该异常对象将以尾随换行符呈现到模式输出中。如果没有异常,则不会输出任何内容,也不会追加尾随换行符。通常在异常之前放一个换行符,并将异常作为模式中的最后一个数据。
F
相当于
文件
文件
用于输出发出日志记录请求的文件名。

警告生成呼叫者位置信息的速度非常慢。除非执行速度不是问题,否则应避免使用它。

请参阅下面关于调用方位置信息可用性的说明。
identity
用于输出当前活动用户的用户名(Principal.Identity.name)。

警告生成呼叫者信息非常慢。除非执行速度不是问题,否则应避免使用它。
l
相当于
位置
L
相当于
位置
用于输出生成日志记录事件的调用者的位置信息。

位置信息取决于CLI实现,但通常由调用方法的完全限定名组成,后跟调用者源文件名和括号之间的行号。

位置信息可能非常复杂有用。然而,它的产生是极其缓慢的。除非执行速度不是问题,否则应避免使用它。

请参阅下面关于调用方位置信息可用性的说明。
级别
用于输出日志记录事件的级别。
用于输出