Блок ведения журнала корпоративной библиотеки не ведет журнал
-
03-07-2019 - |
Вопрос
У меня возникла проблема с версией 3.1 блока приложения для ведения журнала...
С фреймворком 3.5 мое приложение отлично работает на моем рабочем столе...как только он будет внедрен в наш блок контроля качества...ведение журнала перестает функционировать.Web.config идентичен в обоих сценариях.Есть какие-нибудь идеи?Проблема с разрешениями?
После быстрой диагностики...оказывается, это работает при компиляции в режиме отладки, но не при выпуске...кто-нибудь знает о настройке, которую нужно изменить, чтобы заставить это работать в режиме выпуска?
Решение
Что ж, я нашел проблему, поэтому опубликую ее на случай, если кто-нибудь еще столкнется с такой же проблемой.Все это связано с разрешениями на нашей целевой машине, на которой мы выполняем развертывание.В то время как наша среда разработки была "развернута" с использованием встроенного веб-сервера через Visual Studio, нашей средой интеграции был сервер 2003 (надеюсь, вы понимаете, к чему я клоню).Оказывается, проблема с разрешениями связана с настройками пула приложений по умолчанию в iis.Запуск под сетевыми привилегиями не позволяет вам получить доступ к журналу событий, и ошибка не генерируется (обратите внимание, что это настоящая проблема).Если вы переместите его в локальную системную учетную запись...все работает нормально (хотя это и не рекомендуется).В документации EntLib есть раздел для запуска с частичным доверием, в котором вы можете найти большую часть необходимой вам информации.
Другие советы
Я знаю это
System.Diagnostics.Debug.Assert(conditionToTest, "Message when assert fails");
выполняется только тогда, когда определена условная директива компилятора DEBUG.Я подозреваю, что нечто подобное происходит и в вашем случае.