Вход Библиотеки предприятия, не регистрирующийся к журналу событий из ASP.NET

Я провел день, пытаясь сделать Lib Ent, Регистрирующий работу и зарегистрировать что-либо в журнал транзакций базы данных или журнал событий. У меня есть веб-приложение и консольное приложение с той же конфигурацией Lib Ent, но только консольное приложение способно для вхождения в журнал событий. Я попробовал все полномочиями, но я не знаю то, что точно я делаю — который сервисы должны иметь что. Это не работает!

Я прочитал статьи как этот http://imar.spaanjaars.com/275/logging-errors-to-the-event-log-in-aspnet-applications, и я хочу попытаться сделать отчет ASPNET те полномочия. Я использую Windows 7, и я не могу найти учетную запись пользователя ASPNET. Таким образом, где это?

Это - файл конфигурации, который автоматически сгенерирован от утилиты Ent Lib, и это работает только над App.config, не над web.config


    
      
    
    
      
    
    
      
        
          
        
      
    
    
      
      
      
        
          
        
      
    
  

12
задан Randy supports Monica 3 June 2010 в 19:58
поделиться

2 ответа

Я считаю, что под IIS7 (который, как я предполагаю, вы используете) пул приложений будет работать под СЕТЕВОЙ СЛУЖБОЙ .

Вы можете попробовать предоставить СЕТЕВОЙ СЛУЖБЕ полный доступ к разделу реестра HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Eventlog \ Application .
(Не рекомендуется!)

В качестве альтернативы вы можете предоставить КАЖДОМУ полный доступ к HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Eventlog \ Application , зарегистрировать сообщение и отменить это изменение. После настройки ключа вам не потребуются разрешения на запись в реестр.

Или вы можете вручную настроить ключи реестра, которые вам требуются заранее, чтобы избежать проблем с разрешениями:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\Logger]
"EventMessageFile"="c:\\WINNT\\Microsoft.NET\\Framework\\v2.0.50727\\EventLogMessages.dll"


Просто обновление этого ответа, согласно MSDN : «Чтобы создать источник событий в Windows Vista и более поздних версий или Windows Server 2003, у вас должны быть права администратора ».

4
ответ дан 2 December 2019 в 22:04
поделиться

Я использую сценарий PowerShell для создания соответствующего источника ...

$source = "FoToIaW"
if ([System.Diagnostics.EventLog]::SourceExists($source) -eq $false) 
{
  [System.Diagnostics.EventLog]::CreateEventSource($source, "Application")
}
4
ответ дан 2 December 2019 в 22:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: