log4net Azure Blob Appender

时间:2016-05-13 03:35:03

标签: azure log4net log4net-configuration log4net-appender azure-blob-storage

将日志保存到Azure Blob存储中时,是否有办法每天创建不同的文件夹? 现在我使用这个配置,它工作正常

{{1}}

我已经尝试过这个

{{1}}

但它不起作用

我想要的是能够每天动态使用不同的文件夹:类似

DirectoryName = 2016-05-13

DirectoryName = 2016-05-12

DirectoryName = 2016-05-11

这可以实现吗?

由于

1 个答案:

答案 0 :(得分:4)

Here's the code为GitHub上的appender。

这是从配置值映射的DirectoryName类属性:

   private string _directoryName;

    public string DirectoryName
    {
        get
        {
            if (String.IsNullOrEmpty(_directoryName))
                throw new ApplicationException(Resources.DirectoryNameNotSpecified);
            return _directoryName;
        }
        set
        {
            _directoryName = value;
        }
    }

实际为blob创建文件名的相关Filename方法:

private static string Filename(LoggingEvent loggingEvent, string directoryName)
        {
            return string.Format("{0}/{1}.{2}.entry.log.xml",
                                 directoryName,
                                 loggingEvent.TimeStamp.ToString("yyyy_MM_dd_HH_mm_ss_fffffff",
                                                                 DateTimeFormatInfo.InvariantInfo),
                                 Guid.NewGuid().ToString().ToLower());
        }

所以看起来directoryName只接受静态值。这是开源的好事......