Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Запись в лог / 7 сообщений из 7, страница 1 из 1
03.11.2004, 13:10
    #32766570
DenisKB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись в лог
Проблема такая:
При записи в лог из скрипта при одновременном обращение к лог файлу, файл блокируеться и происходит ошибка, как лучше реализовать механизм очереди?
Заранее спасибо!
...
Рейтинг: 0 / 0
04.11.2004, 14:16
    #32768814
DenisKB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись в лог
Может я плохо сформулировал вопрос, попробую уточнить:

Есть скрипт, который должен при каждом к нему обращении записывать некоторую информацию в лог файл (txt файл на сервере).
Проблема состоит в том, что если к скрипту идет сразу (одновременно) несколько обращений, то файл лочиться и выпадает ошибка.
Как лучше реализовать механизм очереди в данном случае?
PS. Умею зхаписывать в EventLog винды, через одноименный класс, но нужно именно в txt файл. (в Базу то же нельзя)
Заранее, спасибо!
...
Рейтинг: 0 / 0
05.11.2004, 08:07
    #32769853
kxmep
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись в лог
Может в разные файлы записывать... имя давать по времени или сессии.
Что-то вроде 20040511134567123.txt

Код: plaintext
kxmep
...
Рейтинг: 0 / 0
05.11.2004, 09:39
    #32769942
hDrummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись в лог
Не очень понятно кто пишет, но вообще-то для записи логов есть классы TraceListener - пример

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
public static int Main(string[] args) {
    // Create a file for output named TestFile.txt.
    Stream myFile = File.Create("TestFile.txt");
 
    /* Create a new text writer using the output stream, and add it to
     * the trace listeners. */
    TextWriterTraceListener myTextListener = new 
       TextWriterTraceListener(myFile);
    Trace.Listeners.Add(myTextListener);
 
    /* Create a text writer that writes to the console screen, and add
     * it to the trace listeners */
    TextWriterTraceListener myWriter = new 
       TextWriterTraceListener(System.Console.Out);
    Trace.Listeners.Add(myWriter);
 
    // Write output to the file and to the console screen.
    Trace.Write("Test output ");
 
    // Write only to the console screen.
    myWriter.WriteLine("Write only to the console screen.");
 
    // Flush and close the output.
    Trace.Flush(); 
    myWriter.Flush();
    myWriter.Close();
 
    return  0 ;
 }
...
Рейтинг: 0 / 0
05.11.2004, 11:02
    #32770142
DenisKB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись в лог
Пишет aspx скрипт к которому идет обращение.
То есть пользователь запрашивает станичку: http://...../qq.aspx?......
Получает что-то в ответ, скрипт перед тем как выдать результат пользователю должен сделать запись в лог файл (обычный txt).
Проблема в том что когда идет несколько одновременных обращений к скрипту то лог файл лочиться и запись в него не возможно.
...
Рейтинг: 0 / 0
05.11.2004, 12:30
    #32770411
hDrummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись в лог
Ну так попробуйте предложенный вариант.
...
Рейтинг: 0 / 0
05.11.2004, 15:46
    #32770970
marina milanina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись в лог
А класс EventLog не поддерживает одновременную запись в лог?
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Запись в лог / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]