Хорошо, это делало мою голову в течение всего дня. В моей установке UAT У меня есть следующий в моем web.configNLog и опция файла include
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance>
<include file="d:\logs\nlog.config"/>
</nlog>
Это тянет во всех моих правилах и целях и работает отлично. Это было до тех пор, пока я не опубликовал наш сервер prod. Такая же настройка, но не удается найти файл nlog.config.
Сначала я думал, что это разрешения NTFS, но Nlog может писать в том же месте папки, где находится этот файл конфигурации. Я использовал внутреннюю регистрацию, чтобы понять, что происходит. Внутренний журнал Nlogs просто говорит, что файл не существует. Кажется, я не могу понять, почему одна и та же установка работает в одной системе, но не с другой. Я добавил все соответствующие NTFS permissions
(трижды проверено) и даже дошел до того, что предоставлял «каждому» права на чтение в качестве теста, но до сих пор не радует.
Я предполагаю, что что-то происходит в пределах IIS
, что останавливает приложение от чтения за пределами корневой веб-папки на prod? Что было бы странно, если бы он мог писать в одно и то же место.