Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
71 / 62 / 33
Регистрация: 03.09.2013
Сообщений: 306

Запись логов в файл из службы Windows

12.03.2018, 22:23. Показов 3271. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В классе задаю
C#
1
StreamWriter sw = File.AppendText("Log.txt");
В методе OnStart вызываю
C#
1
Writetolog("onstart");
C#
1
2
3
4
async void Writetolog(string data)
        {
            await sw.WriteLineAsync(data);
        }
Проблема в том, что запись производится только в момент остановки службы при вызове sw.Close();
Как можно вести непрерывную запись?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.03.2018, 22:23
Ответы с готовыми решениями:

Запись логов в файл
Добрый день, подскажите в чём проблема, необходимо сделать след: 1. Логи с приоритетом info - пишутся только в консоль 2. Логи с...

Запись логов в файл
Добрый день. Есть небольшое клиент-серверное приложение на сокетах, работающее с БД. Вопрос: как лучше написать небольшой логгер,...

Запись логов в файл с ограниченным числом строк
Всем привет. Как лучше писать логи в файл, который должен содержать не больше 100 тыс. строк? На данным момент у меня...

5
.NET senior
 Аватар для bax_tang
441 / 359 / 137
Регистрация: 23.09.2016
Сообщений: 980
12.03.2018, 22:31
Driwars, попробуйте периодически вызывать
C#
1
await sw.FlushAsync();
таким образом содержимое внутреннего буфера StreamWriter-а будет записываться в файл на диске.
0
71 / 62 / 33
Регистрация: 03.09.2013
Сообщений: 306
12.03.2018, 22:41  [ТС]
Пробовал в Writetolog добавить служба падает. Периодически типо по событию таймера?
0
.NET senior
 Аватар для bax_tang
441 / 359 / 137
Регистрация: 23.09.2016
Сообщений: 980
12.03.2018, 23:02
Driwars, с каким исключением падает служба?
А вообще, стоит использовать уже готовые решения типа того же NLog, чтобы не изобретать велосипеды.
0
71 / 62 / 33
Регистрация: 03.09.2013
Сообщений: 306
12.03.2018, 23:04  [ТС]
Пробовал через
C#
1
timer.Elapsed+= async (sender, e) => await sw.FlushAsync();
и с помощью sw.AutoFlush = true; Вылеты службы.
0
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
13.03.2018, 09:16
Driwars, нужно сделать запись в файл:
1) Открываете/создаёте файл;
2) Делаете запись;
3) Закрываете файл.

Не надо держать его открытым.

Либо вручную Close, либо оборачиваете использование Stream`а в using, либо вообще не паритесь, а используете File.AppendText.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.03.2018, 09:16
Помогаю со студенческими работами здесь

Необходимо из службы windows запустить файл exe
Как это реализовать? по методу onStart пишу Process.Start("Путь к файлу"). Все собирается. Устанавливаю службу, но при ее запуске вижу...

Запись "логов" в файл
В общем постепенно делаю логирование для программы. Для начала хотел бы разобраться со временем работы программы, далее уже по принципу...

Запись логов
Куда лучше записывать логи? В базу или в текстовый файл? Что лучше для нагрузки сервера?

Запись логов
Привет. Есть скрипт: проверка наличия VPN каждые 5 мин. в случае отсутствия оного - (пере)подключение и так по кругу. При этом ведется...

SysLog и запись логов в БД
Добрый день, форумчане. Появилась необходимость просматривать логи посещения сайтов. Скачал библиотеку Syslog.Server.dll (прикрепил)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru