【问题标题】:log4net missing log entrieslog4net 缺少日志条目
【发布时间】:2016-05-10 17:17:57
【问题描述】:

我使用 log4net 版本 1.2.15.0 作为 Nuget,有时我会错过一些日志条目。 我正在使用这个 throw pythonnet,但我不知道为什么会这样。 我有这样的代码:

logger.Info("reading def");
string textDefinition = FileExtensions.ReadAllTextReadOnly(testPath);
logger.Info("Definition");
logger.Debug(textDefinition);

try
{
    testDefinition = JsonConvert.DeserializeObject<TestSuiteDefinition>(textDefinition);
}
catch (Exception e)
{
    logger.Info("failed reload def");
    logger.Info(e.Message);
}
            
logger.Info("test 1");

但我已经记录了这个:

2016-05-10T18:33:50 reading def
2016-05-10T18:33:50 Definition
2016-05-10T18:33:50 { very long JSON... }
After some time logging continues.

这种情况仅在有时平均为 1/16 次运行时才会发生,在大多数情况下它会记录所有内容。 我打开了 log4net 内部调试日志,但我看不到任何可疑的东西。

log4net internal log

你能看一下吗?

【问题讨论】:

    标签: .net logging log4net


    【解决方案1】:

    我将其用作 DLL,并从 python 导入所有类和方法。

    所以它就像一个控制台应用程序。

    我有一组日志记录到一个文件中,而内部 log4net 调试日志并没有告诉我任何事情。

    我测试过,如果你锁定一个日志文件,它会写出类似 Unable to log message 之类的内容,但内部日志调试文件中没有类似的内容。

    奇怪的是,这发生的非常随机,大约 16 个执行测试中的 1 个。

    【讨论】:

      【解决方案2】:

      Log4net 收集日志然后将它们插入在一起,我注意到有时由于断开连接或其他原因,它会丢失这些数据...

      当网站回收时,网站(不是 Web 应用程序)也会发生很多情况..

      虽然我不知道究竟是什么原因造成的,但我发现如果你激活文件日志,日志不会丢失......

      祝你好运

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-11-07
        • 1970-01-01
        • 2021-04-08
        • 2011-02-06
        • 1970-01-01
        • 2023-03-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多