我有一些自定义异常,它们从Exception继承,具有自定义属性
e.g。
[Serializable]
public class MyException : Exception
{
public MyException(string message, string myProperty)
{
MyProperty = myProperty
}
public string MyProperty {get; set;}
}
我想自动将每个自定义属性添加到我的log4net日志中。有没有内置的方法来做这个或我是否需要创建某种自定义appender?
答案 0 :(得分:2)
您可以使用GlobalContext.Properties
向log4net添加自定义字段,如下所示:
GlobalContext.Properties["MyProperty"] = customException.MyProperty;
然后,在您的appender配置中,您可以使用%property{MyProperty}
访问此自定义字段。
答案 1 :(得分:0)
您可以覆盖自定义异常中的.ToString()方法,并将输出附加到基本.ToString()方法。