powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / NLog + Win Service
12 сообщений из 12, страница 1 из 1
NLog + Win Service
    #37858237
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток

Имеется вин служба, на ней висит еще WCF-сервис.
Ну и требуется что-нибудь логгировать. Логгер - NLog.

Так вот, собственно процесс логгирования не идет(в просто консольном приложении все ок). Даже файлы лога не создаются.
Конфигурация nlog лежит в App.Config.

Код: xml
1.
2.
...
Рейтинг: 0 / 0
NLog + Win Service
    #37858240
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хм.. что-то глюкнуло... не успел запостить

конфигурация:
Код: xml
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.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog"/>
  </configSections>
  <system.serviceModel>
    <client>
      <endpoint .../>
    </client>
    <services>
      <service ... />
      </service>
    </services>
  </system.serviceModel>
  <connectionStrings>
    ....
  </connectionStrings>

  <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <!-- make sure to set 'Copy To Output Directory' option for this file -->
    <!-- go to http://nlog-project.org/wiki/Configuration_file for more information -->

    
    <variable name="shortLog" value="${date:format=HH\:mm\:ss} (${level:uppercase=true}): ${message}"/>
    <variable name="fullLog" value="${date:format=HH\:mm\:ss} (${level:uppercase=true}): ${logger} | ${message} | Exception: ${exception:format=ToString,method:maxInnerExceptionLevel=5}"/>
    <variable name="logDir" value="D:/Logs/${date:format=yyyy-MM-dd}"/>
    <targets>
      <target name="File" xsi:type="File" fileName="${logDir}/${logger}.txt" layout="${shortLog}"/>
      <target name="File_Full" xsi:type="File" fileName="${logDir}/${logger}.txt" layout="${fullLog}"/>
      <target name="Console" xsi:type="Console" layout="${shortLog}"/>
    </targets>

    <rules>
      <logger name="MyNamespace.*" writeTo="Console"/>
      <logger name="MyNamespace.*" writeTo="File" minlevel="Info"/>
      <logger name="MyNamespace.*" writeTo="File_Full" minlevel="Info"/>
 
    </rules>
  </nlog>
</configuration>
...
Рейтинг: 0 / 0
NLog + Win Service
    #37866309
mos6ka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sky Dragon, А библиотека NLog лежит в корне проекта?
и должно быть 2 референса, на сам нлог и еще одну его библиотеку, если не ошибаюсь и даны файл конфигурации должен быть во всех проектах
...
Рейтинг: 0 / 0
NLog + Win Service
    #37866320
mos6ka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sky Dragon, если не ошибаюсь, конфигурация должна лежать в файле NLog.cong
...
Рейтинг: 0 / 0
NLog + Win Service
    #37866353
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mos6ka,

вы не совсем правы:
NLogNLog attempts to automatically configure itself on startup, by looking for the configuration files in some standard places.

The following locations will be searched when executing a stand-alone *.exe application:
• standard application configuration file (usually applicationname.exe.config)
• applicationname.exe.nlog in application’s directory
• NLog.config in application’s directory
• NLog.dll.nlog in a directory where NLog.dll is located
• file name pointed by the NLOG_GLOBAL_CONFIG_FILE environment variable (if defined, NLog 1.0 only - support removed in NLog 2.0)


У меня он видит вот такую запись в Web.config:
Код: xml
1.
2.
3.
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
		<include file="Logger.config" />
	</nlog>
...
Рейтинг: 0 / 0
NLog + Win Service
    #37866364
HiMik2004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sky Dragon,

Под какой учётной записью стартует сервис, имеет ли она права на подкаталог логирования. Система?
В NLog-е этом можно включить дебаггинг? В log4net можно, он будет в trace поругиваца, если ему что-то не пошло)
...
Рейтинг: 0 / 0
NLog + Win Service
    #37866898
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mos6ka
конфигурацию он и из Web.config берет.

HiMik2004
Ну скорее под админкой. это же служба, как я понимаю. Ведь она сама имеет доступ к web.config и работает норм.
К тому же папка для лога лежит в общедоступном месте.

Win 7 x32
Про дебаггинг не в курсе, не смотрел.

Начал запускать службу не из System32 а прям из каталога, где лежит проект. Все заработало.

Я конечно не знаю, может это именно NLog отказывается брать конфигурацию из папки System32...
...
Рейтинг: 0 / 0
NLog + Win Service
    #37866969
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sky Dragon,

DragonHiMik2004
Ну скорее под админкой. это же служба, как я понимаю. Ведь она сама имеет доступ к web.config и работает норм.
К тому же папка для лога лежит в общедоступном месте.

WIN службы не работают под админом по умолчанию. Обычно под Local System / Local Service / Network service. А вообще узнать просто, через Administrative Tools -> Services
...
Рейтинг: 0 / 0
NLog + Win Service
    #37867057
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Lelouch,

Запускается как локальная служба, вход в систему с системной учетной записью.
Просто еще раз повторюсь. Ей же не надо писать в системные каталоги ничего, а только взять конфигурацию логгера.
Например в этой же службе запускается WCF сервис, конфигурацию он берет тоже из этого же web.config'a. И она то работает. А логгер нет..
...
Рейтинг: 0 / 0
NLog + Win Service
    #37867213
HiMik2004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sky Dragon,

Немного непонятно. "Имеется вин служба, на ней висит еще WCF-сервис." При чём тут Web.config?
...
Рейтинг: 0 / 0
NLog + Win Service
    #37867304
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HiMik2004,

кстати, немного наврал. не веб конфиг,а app.config

есть вин служба(первый проект). На ней хостится WCF-сервис(второй проект). Конфигурация WCF-сервиса берется из апп-конфига вин службы. В обоих проектах идет логирование работы этих сервисов. И соотвественно конфигурация NLog расположена опять таки в том же апп-конфиге windows службы.

Так вот, WCF сервис конфигурацию же спокойно берет из файла, а NLog нет
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
NLog + Win Service
    #38776864
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите почему нлог дублирует записи?
10/15/2014 10:14:46|Debug|select "Date_Add" || SELECT "Date_Add" FROM "SC_Post16"."TPost16" order by "Date_Add" desc limit 1;
10/15/2014 10:14:46|Debug|select "Date_Add" || SELECT "Date_Add" FROM "SC_Post16"."TPost16" order by "Date_Add" desc limit 1;
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / NLog + Win Service
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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