powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Запись в лог
7 сообщений из 7, страница 1 из 1
Запись в лог
    #32766570
DenisKB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема такая:
При записи в лог из скрипта при одновременном обращение к лог файлу, файл блокируеться и происходит ошибка, как лучше реализовать механизм очереди?
Заранее спасибо!
...
Рейтинг: 0 / 0
Запись в лог
    #32768814
DenisKB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может я плохо сформулировал вопрос, попробую уточнить:

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

Код: plaintext
kxmep
...
Рейтинг: 0 / 0
Запись в лог
    #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
Запись в лог
    #32770142
DenisKB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пишет aspx скрипт к которому идет обращение.
То есть пользователь запрашивает станичку: http://...../qq.aspx?......
Получает что-то в ответ, скрипт перед тем как выдать результат пользователю должен сделать запись в лог файл (обычный txt).
Проблема в том что когда идет несколько одновременных обращений к скрипту то лог файл лочиться и запись в него не возможно.
...
Рейтинг: 0 / 0
Запись в лог
    #32770411
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так попробуйте предложенный вариант.
...
Рейтинг: 0 / 0
Запись в лог
    #32770970
marina milanina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А класс EventLog не поддерживает одновременную запись в лог?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Запись в лог
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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