2008-08-09 26 views
7

Mam aplikację ASP.NET, dla której napisaliśmy własny moduł rejestrowania.Gdzie powinienem umieścić mój plik dziennika dla aplikacji asp.net?

Moje pytanie brzmi: gdzie jest standardowe miejsce zapisu pliku dziennika? To znaczy. strona internetowa będzie działać jako anonimowa tożsamość użytkownika (np. IUSR na IIS7) i potrzebuję miejsca, w którym będę wiedział, że będzie miał uprawnienia do pisania.

Cheers,

Odpowiedz

6

App_Data folderu w katalogu głównym projektu. Nie obsługuje się żądań internetowych; aby inni ludzie nie mogli go podsłuchiwać.

1

Sugerowałbym umieszczenie pliku dziennika na oddzielnym dysku, jednak powinien on przynieść niewielki wzrost wydajności, aby nie próbować zarówno czytać, jak i pisać na tym samym dysku, co strona internetowa. Jeśli nie możesz umieścić pliku dziennika na oddzielnym dysku, to po prostu wybrałbym folder do wyboru.

W każdym przypadku będziesz musiał nadać uprawnienie "Usługa sieciowa" uprawnienia "Modyfikuj" do żądanego folderu.

Jeśli z drugiej strony, masz dostęp do bazy danych, a następnie zapisz tam informacje. Będzie o wiele szybszy niż dostęp do dysku twardego i nie będzie dostępny publicznie. Będziesz także w stanie z łatwością raportować dane.

0

Nie jestem w stanie modyfikować uprawnień do folderów (szczególnie poza folderem macierzystym katalogu wirtualnego) i nie mam jeszcze folderu App_Data, więc jestem nieco niezdecydowany.

Tak więc na razie idę z folderem CommonApplicationData.

  • na Vista/Server 2008 to C: \ ProgramData \
  • na XP/Server 2003 to C: \ Documents and Settings \ All Users \ Application Data \
0

I "Nie jestem w stanie modyfikować uprawnień do folderów (szczególnie poza folderem macierzystym katalogu wirtualnego) i nie mam jeszcze folderu App_Data, więc jestem nieco niezdecydowany.

Jeśli masz stronę internetową, wyraźnie masz gdzieś folder. Czy nie możesz dodać podfolderu (niezwiązanego z przeglądarką)? Wygląda na to, że byłoby to bardziej odpowiednie miejsce do umieszczania dzienników niż umieszczanie ich w globalnym folderze współdzielonym.

0

Można również zalogować się do dziennika zdarzeń systemu Windows lub do tabeli w bazie danych. Jak często ludzie patrzą na dziennik zdarzeń? Jeśli jest to sprawdzane na zasadzie regualr, pisanie do tabeli powoduje, że zgłaszanie się z powrotem jest o wiele łatwiejsze, ponieważ cofnięcie zamówienia jest trywialne i pokazuje tylko ostatnie zdarzenia X dla bieżącego okresu. Dziennik zdarzeń systemu Windows umożliwia również zapytanie do dziennika zdarzeń systemu Windows za pośrednictwem PowerShell lub z LogParser.

+0

lub z Log Parser Lizard, jest doskonałym dodatkiem do LogParser, obsługuje składnię podobną do sql dla prawie wszystkiego, łącznie z systemem plików. – jhexp

0

Prześlij app_data to najlepszy pomysł, należy pamiętać, że po opublikowaniu projektów, jeśli opcja "Usuń wszystkie istniejące pliki przed opublikowaniem" jest zaznaczona, to bieżące dane w folderze znikną. Rozwiązaniem jest pominięcie usunięcia folderu app_data.

Inną opcją rejestrowania jest użycie istniejącej struktury, takiej jak Log4net.