我正在尝试将Loggly appender实用程序用于log4net。
我发现他们的代码是通过ThreadContext
属性进行枚举,并将它们附加到通过网络发送到loggly服务的有效负载上。好主意!但是,相同的功能未应用于GlobalContext
属性。弄清楚这是他们的错过,我试图通过GlobalContext
属性进行枚举,并将这些属性添加到有效载荷中。
然而,事实证明这是一个问题。在访问ThreadContext
属性时,似乎没有任何方法可以访问密钥和关联值。
如何枚举GlobalContext
属性?
答案 0 :(得分:0)
我看到的唯一方法是检索全局上下文的属性类(GlobalContext.Properties
返回GlobalContextProperties
类)并获取内部方法返回的ReadOnlyPropertiesDictionary
{{ 1}}通过反思。获得GetReadOnlyProperties()
后,您可以迭代键和值
从我看到的ReadOnlyPropertiesDictionary
或多或少具有相同的机制,您可以在ThreadContext
枚举上将示例移植到ThreadContext
。