如何使用Castle Windsor Factory创建多个命名记录器?

时间:2013-10-01 17:32:47

标签: logging log4net castle-windsor castle windsor-facilities

guy提出了几乎相同的问题。

我目前正在MVC应用程序中使用城堡日志记录工具,并在global.asax中加载当前单个命名的记录器,这样就不会轻易地将多个日志文件分成同一级别,而不会获得相同的日志记录输出到多个文件。我正在使用LoggerToMatch进行过滤,我还有一个自定义的log4net渲染,我目前使用单个命名的log​​ger,我需要让不同的命名记录器使用不同的自定义渲染。

我认为Krzysztof的答案here就是我所追求的,但我不知道这些参数是什么,c。c。

如果有一个看起来像这样的log4net配置文件,我将如何使用Windsor重新注册这两个命名记录器?到目前为止,我在注册设施时一直告诉Windsor关于一个命名的记录器。

    <logger name="Logger1">
        <level value="INFO" />
        <appender-ref ref="ErrorRollingFile1" />
        <appender-ref ref="TraceRollingFile1" />
        <appender-ref ref="InfoRollingFile1" />
    </logger>

    <logger name="Logger2">
        <level value="INFO" />
        <appender-ref ref="ErrorRollingFile2" />
        <appender-ref ref="TraceRollingFile2" />
        <appender-ref ref="InfoRollingFile2" />
    </logger>

1 个答案:

答案 0 :(得分:0)

UsingFactoryMethod((k, c)

UsingFactoryMethod使您可以访问k = IKernel和c = CreationContext

通过“k”,您可以显式访问和解析容器中的组件(IKernel是容器的“内核/核心”)

到“c”您有关于父上下文的详细信息。