- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在我的 wcf 服务中使用以下内容在日志消息中记录用户:
log4net.ThreadContext.Properties["user"] = this.currentUser.LoginName;
InstanceContextMode.PerSession
中运行.在对 wcf 服务的初始调用中,我设置了这个
ThreadContext
属性分配给当前登录的用户,但每次后续调用都不会记录此属性。
PerSession
.我假设它使用线程池来处理请求。
最佳答案
我遇到了同样的问题,这就是我让它工作的方式。您可以使用 GlobalContext,因为无论如何都会为每次调用评估它。
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)]
public class MyService : IMyService
{
//static constructor
static MyService()
{
log4net.Config.XmlConfigurator.Configure();
log4net.GlobalContext.Properties["user"] = new UserLogHelper();
}
...
}
private class UserLogHelper
{
public override string ToString()
{
var instanceContext = OperationContext.Current.InstanceContext;
var myServiceInstance = instanceContext.GetServiceInstance() as MyService;
return myServiceInstance?.currentUser?.LoginName;
}
}
关于wcf - log4net 在 wcf PerSession 服务中使用 ThreadContext.Properties,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9047889/
我正在尝试从 log4j-1.x 升级到 log4j-2.3 并在运行时出现以下错误。我缺少什么吗? public void debug(String msg) { appendContext
来自这个答案https://stackoverflow.com/a/25125159/4367326我有 routingAppender 工作,但我想为程序中的每个线程设置 ThreadContext
我有以下控制台附加程序; 问题是我在这里使用的模式输出一个空的 ThreadContext ({})。我不想使用特定的键名称(例如 %X{username}),因为系统非常
我们使用的是 Log4net 的 ThreadContext.Stacks,它运行良好。如果有多个 ThreadContext.Stacks["key"].Push(...),我的问题就来了。 使用简
我已经设置了 ThreadContext.Properties 并且需要在我的代码生命周期中更新它的值。过去我使用过 log4j MDC 并且不得不:MDC.remove(跟踪); 然后通过以下方式添
我的 AsP.NET 站点上运行着 log4net。我可以将消息记录到我的数据库表中,但它没有记录 ThreadContext 属性。例如: ThreadContext.Properties["Url
我正在尝试这个: Type ThreadContextType = typeof(Application).GetNestedType("ThreadContext", System.Reflecti
我一直在做一个使用 log4j2 的项目,在这个项目中我使用了 ThreadContext。现在我回到使用 log4j (1),它不提供 ThreadContext。 ThreadContext 有什
我有以下 Log4J2 配置 XML:
我不明白官方文档中的解释: 逻辑线程可以从一个托管线程跳转到另一个托管线程。 ThreadContext 和 ThreadLogicalContext 有什么区别?有人可以详细说明一下吗? 谢谢。 最
2014 年 11 月 18 日更新 - 在浏览 log4net 源存储库时,我发现 LogicalThreadContext 的实现在 2011 年 11 月被修改为它使用 CallContext.
我正在开发一个 Log4Net 配置,该配置将记录所有未处理的异常。我需要根据用户将某些属性添加到每个日志条目中。我已在 Application_Error 事件中按以下方式成功设置了此设置。这是我完
我只是想知道threadContext.put和MDC.put之间的区别。因为,我相信两者都在做相同的操作。 最佳答案 Log4j 2 continues with the idea of the M
看起来 Class.getResource() 使用 Class 类加载器并忽略 Thread 上下文类加载器,这不是我想要的。关于如何解决这个问题有什么建议吗? 最佳答案 只需获取当前线程类加载器并
有没有人试过同时堆叠context和使用Tasks? 我正在尝试这样的事情: using (log4net.ThreadContext.Stacks["contextLog"].Push("Savin
我想在我的 wcf 服务中使用以下内容在日志消息中记录用户: log4net.ThreadContext.Properties["user"] = this.currentUser.LoginName
在 Web 服务应用程序中,我使用静态方法设置 log4j ThreadContext 变量以进行日志记录,如下所示, public static void setLogParams(String c
总结一下这个问题,我在一个包中有一个公共(public)类,它在整个项目中使用。该类是一个 Aspect 类,它将值放入 ThreadContext(log4j2) 中,以便我们的日志记录将相应的 s
当停止运行我们基于 Wicket-6.19 的网站的 Tomcat 时,大量警告淹没了我们的日志文件: INFO: Stopping service Catalina Jul 06, 2015 8:1
我在一些地方读到 log4net threadContext 在 asp.net 场景中使用不安全。以下是几篇文章: Log4Net, ThreadContext, and Global.asax h
我是一名优秀的程序员,十分优秀!