我有一个从多个服务提供商获取数据(通常是 exe 文件和文本文件)的系统,我的系统获取这些数据并对其进行一些工作(基本上分析其行为)。
我Log4Net
用来生成日志文件,我想为每个服务提供商提供单独的日志文件。
直到现在(因为我只有一个服务提供商)我曾经Postsharp
记录/跟踪我的系统。基本上我创建了包含以下代码的属性:
Public class LogAttribute : OnMethodBoundaryAspect
{
private static ILog = LogManager.GetLogger();
public override void OnEntry(MethodExecutionEventArgs eventArgs)
{
//Log some stuff...
}
//some other code
}
我添加了这个,或者这种属性(我对不同的日志记录策略有不同的属性),并将这个属性附加到我想要记录的不同方法/程序集。
问题
我可以Postsharp
根据使用正在记录的方法的服务来解码相关的日志文件吗?(一些方法和类被不止一个服务提供商使用)。
如果它有助于我使用 Autofac 注入我的依赖项,那么也许我可以在运行时解决日志?