与企业库一起使用时,如何释放Logger文件处理程序?

时间:2018-08-13 09:58:17

标签: logging enterprise-library

首先,我按照here

的说明进行操作

一切正常。 我部署到Azure时除了一件事。 进行日志记录时,创建的文件似乎已被该过程“锁定”,因此我无法将文件“转移”到本地。

enter image description here

这种情况一旦发生,失败将永远发生,直到我手动停止api进程,然后才能够传输文件。

问题:如何正确编写代码以“释放文件锁”?

下面显示了我的代码段:

        private static LogWriter logWriter;
        private static readonly ExceptionPolicyFactory _exceptionPolicyFactory;
        private static readonly ExceptionManager _exceptionManager;

        static CustomExceptionHandler()
        {
            logWriter = new LogWriterFactory().Create();
            Logger.SetLogWriter(logWriter, false);

            _exceptionPolicyFactory = new ExceptionPolicyFactory();
            _exceptionManager = _exceptionPolicyFactory.CreateManager();
        }

        public static void HandleAPIFilterException(Exception ex)
        {
            Exception exceptionToThrow = null;

            //The HandleException method will return true if the exception should be (re-)thrown.
            if (_exceptionManager.HandleException(ex, "MY-API-Filter", out exceptionToThrow))
            {
                if (exceptionToThrow == null)
                {
                }
                else
                {
                }
            }
        }

0 个答案:

没有答案