Elmah:如何隐藏用户名?

Elmah: How to hide username?

默认情况下,Elmah 显然会将用户名记录为日志条目的一部分。我们的客户认为这是敏感数据并希望将其删除。如何做到这一点?

(顺便说一句:日志中也有"Code"字段,它总是空的,这个字段是什么意思?)

将以下内容添加到 Global.asax:

void ErrorLog_Filtering(object sender, ExceptionFilterEventArgs args)
{
    var httpContext = args.Context as HttpContext;
    if (httpContext != null && httpContext.Request.User.Identity.IsAuthenticated)
    {
        var error = new Error(args.Exception, httpContext);
        error.User = "***hidden***";
        ErrorLog.GetDefault(httpContext).Log(error);
        args.Dismiss();
    }
}

改编自:http://docs.elmah.io/remove-sensitive-form-data/

编辑

为了回答您的其他问题,"Code" 字段应为 HTTP 状态代码:500、404 等。