为什么NLog会停止记录

时间:2014-06-27 15:15:18

标签: c# nlog

我现在遇到了关于使用NLog的烦人问题。我的配置文件很简单:

<?xml version="1.0" encoding="utf-8" ?>
           <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<!-- make sure to set 'Copy To Output Directory' option for this file -->
<!-- go to http://nlog-project.org/wiki/Configuration_file for more information -->

<targets>
<target name="logfile" xsi:type="File"  filename = "Logfile.txt" /> 
</targets>

<rules>  
<logger name="Program" minlevel="Trace" writeTo="logfile" />
<logger name="traincheck" minlevel="Trace" writeTo="logfile" />
  </rules>
 </nlog>

我的winform中有一个Windows Media Player,带有一个“打开”按钮。代码如下:

private void Open_Click(object sender, EventArgs e)
    {
        openFileDialog1.Multiselect = true;
        openFileDialog1.InitialDirectory = camera_dir;
        logger.Info("External file opening and playing ");

        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {                
            openFileDialog1.Filter = "(avi,mp3,wav,mp4,mov,wmv,mpg)   |*.avi;*.mp3;*.wav;*.mp4;*.mov;*.wmv;*.mpgn|all files|*.*";

            axWindowsMediaPlayer1.URL = openFileDialog1.FileName;

        }

    }

我只是希望当我单击按钮时,openFileDialog显示出来,我可以选择要播放的文件,并且可以记录此事件(logger.Info(“外部文件打开和播放”)。此过程有没问题。问题是连续的操作(“下一步”按钮点击,显示/隐藏播放列表等)不再被记录了!(我在每个事件中都放了一个logger.Info(...))

如果我在其他logger.Info()中插入断点,例如在Nextbutton_click中,当我单击“下一步”按钮时,程序会在该点断开,但没有记录(没有信息写在日志文件中) 。我不知道在打开文件后记录了什么。有人对这个或任何建议有任何想法吗?谢谢。

1 个答案:

答案 0 :(得分:2)

我们有一个使用NLOG的WEB API服务,记录了几个月。但是有一天它会突然停止记录。

原因是管理员为日志文件夹添加了新的角色权限,它以某种方式删除了以前的权限,并且NLOG停止了日志记录。

但是,我了解到使用Nlog.Config中的以下设置将帮助您捕获此类无声故障

internalLogLevel =&#34;错误&#34;