Log4cxx проблема с FileAppender.
От: Аноним  
Дата: 23.12.10 20:23
Оценка:
Всем доброго времени суток.
Такая проблема: Есть DLL( С++ MSVS 2008 ), которая подключается к некому серверу( в их нотации плагин для расширения ) и выполняет некоторые действия. Для логирование в DLL используется log4cxx( в виде еще одной dll ). Настройка ведется через xml. Если при описании FileAppender'a использовать тег file = "//log/plugin.log", то писать будет C:\\log\plugin.log. Если file = "log/plugin.log" ( ждем создание поддиректории и в ней файл ), то пишет в C:\Windows\SysWOW64\log\plugin.log. Нормально отрабатывают только прямые пути. Может кто встречался с этим и как решить? Буду благодарен за любую помощь.
log4cxx
Re: Log4cxx проблема с FileAppender.
От: Peregrin  
Дата: 24.12.10 13:15
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Всем доброго времени суток.

А>Такая проблема: Есть DLL( С++ MSVS 2008 ), которая подключается к некому серверу( в их нотации плагин для расширения ) и выполняет некоторые действия. Для логирование в DLL используется log4cxx( в виде еще одной dll ). Настройка ведется через xml. Если при описании FileAppender'a использовать тег file = "//log/plugin.log", то писать будет C:\\log\plugin.log. Если file = "log/plugin.log" ( ждем создание поддиректории и в ней файл ), то пишет в C:\Windows\SysWOW64\log\plugin.log. Нормально отрабатывают только прямые пути. Может кто встречался с этим и как решить? Буду благодарен за любую помощь.

Может у процесса текущая директория — C:\Windows\SysWOW64 ?
... << RSDN@Home 1.2.0 alpha 4 rev. 1481>>
Re[2]: Log4cxx проблема с FileAppender.
От: GaRDi  
Дата: 24.12.10 14:40
Оценка:
Здравствуйте, Peregrin, Вы писали:

P>Здравствуйте, <Аноним>, Вы писали:


А>>Всем доброго времени суток.

А>>Такая проблема: Есть DLL( С++ MSVS 2008 ), которая подключается к некому серверу( в их нотации плагин для расширения ) и выполняет некоторые действия. Для логирование в DLL используется log4cxx( в виде еще одной dll ). Настройка ведется через xml. Если при описании FileAppender'a использовать тег file = "//log/plugin.log", то писать будет C:\\log\plugin.log. Если file = "log/plugin.log" ( ждем создание поддиректории и в ней файл ), то пишет в C:\Windows\SysWOW64\log\plugin.log. Нормально отрабатывают только прямые пути. Может кто встречался с этим и как решить? Буду благодарен за любую помощь.

P>Может у процесса текущая директория — C:\Windows\SysWOW64 ?


Там Windows Server 2003, и процесс запущен как служба от уч. записи SYSTEM.
Но exe находится на другом локальном диске(D).
Re[3]: Log4cxx проблема с FileAppender.
От: Peregrin  
Дата: 24.12.10 14:47
Оценка:
Здравствуйте, GaRDi, Вы писали:

P>>Может у процесса текущая директория — C:\Windows\SysWOW64 ?


GRD>Там Windows Server 2003, и процесс запущен как служба от уч. записи SYSTEM.

GRD>Но exe находится на другом локальном диске(D).

Где находится exe не важно. Текущую директорию процесса можно посмотреть Process Explorer'ом. И у служб она обычно C:\Windows\System32 (а на 64-битной винде для 32-битного приложение это C:\Windows\SysWOW64 и есть).
... << RSDN@Home 1.2.0 alpha 4 rev. 1481>>
Re[3]: Log4cxx проблема с FileAppender.
От: Draqon  
Дата: 24.12.10 14:53
Оценка: 2 (1) +1
У процесса текущая директория — C:\Windows\SysWOW64. Потому как сервис.
Где находится ехе — совершенно при этом не важно.
Если необходимо писать лог именно рядом с ехе, можно в конфиге прописать путь как ${EXEPATH}\log\plugin.log
и перед вызовом DOMConfigurator::configure вручную добавить переменную EXEPATH с соответствующим содержимым в environment с помощью putenv.

Здравствуйте, GaRDi, Вы писали:

GRD>Там Windows Server 2003, и процесс запущен как служба от уч. записи SYSTEM.

GRD>Но exe находится на другом локальном диске(D).
Re[4]: Log4cxx проблема с FileAppender.
От: GaRDi  
Дата: 27.12.10 14:55
Оценка:
Здравствуйте, Draqon, Вы писали:

D>У процесса текущая директория — C:\Windows\SysWOW64. Потому как сервис.

D>Где находится ехе — совершенно при этом не важно.
D>Если необходимо писать лог именно рядом с ехе, можно в конфиге прописать путь как ${EXEPATH}\log\plugin.log
D>и перед вызовом DOMConfigurator::configure вручную добавить переменную EXEPATH с соответствующим содержимым в environment с помощью putenv.

D>Здравствуйте, GaRDi, Вы писали:


GRD>>Там Windows Server 2003, и процесс запущен как служба от уч. записи SYSTEM.

GRD>>Но exe находится на другом локальном диске(D).

Спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.