|
Log4Net
|
|||
---|---|---|---|
#18+
Добрый день. Был у меня проект, использующий log4Net. Установили его на удаленном компе - все работает. Вскоре обнаружили что логи не писались - проект был в папке Program Files, прав у пользователя на папку с логими не было, программа не ругалась. Если log4net не может записать лог по причине отстутствия прав на запись - она должна ругаться? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 11:47 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleона должна ругаться? нет. Невозможность какому-то из аппендеров записать данные - не повод для паники ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:12 |
|
Log4Net
|
|||
---|---|---|---|
#18+
ИзопропилFullKettleона должна ругаться? нет. Невозможность какому-то из аппендеров записать данные - не повод для паники Ну а можно ли средствами Log4Net заставить ругаться? Понятно, что другими можно ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:23 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleИзопропилпропущено... нет. Невозможность какому-то из аппендеров записать данные - не повод для паники Ну а можно ли средствами Log4Net заставить ругаться? Понятно, что другими можно ))) вопрос в том - в какое место ругаться? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:32 |
|
Log4Net
|
|||
---|---|---|---|
#18+
WinnipuhFullKettleпропущено... Ну а можно ли средствами Log4Net заставить ругаться? Понятно, что другими можно ))) вопрос в том - в какое место ругаться? Да. Не совсем понятно. Можно при входе в приложение проверять - доступен ли файл для записи и ругаться. Хотя тут без средств log4net не обойтись (мы точно не можем знать имя файла, хотя бы из-за параметра maximumFileSize) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:40 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettle, Moreover, log4net will not revert to System.Console.Out or System.Console.Error when its designated output stream is not opened, is not writable or becomes full. This avoids corrupting an otherwise working program by flooding the user's terminal because logging fails. However, log4net will output a single message to System.Console.Error and System.Diagnostics.Trace indicating that logging can not be performed. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:41 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleWinnipuhпропущено... вопрос в том - в какое место ругаться? Да. Не совсем понятно. Можно при входе в приложение проверять - доступен ли файл для записи и ругаться. Хотя тут без средств log4net не обойтись (мы точно не можем знать имя файла, хотя бы из-за параметра maximumFileSize) или по маске проверять все файлы в папке. Кто-нибудь вообще такое делал (проверку доступности на запись файла с логами). Это вообще - моя вина что я не предусмотрел такое? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:42 |
|
Log4Net
|
|||
---|---|---|---|
#18+
ИзопропилFullKettle, Moreover, log4net will not revert to System.Console.Out or System.Console.Error when its designated output stream is not opened, is not writable or becomes full. This avoids corrupting an otherwise working program by flooding the user's terminal because logging fails. However, log4net will output a single message to System.Console.Error and System.Diagnostics.Trace indicating that logging can not be performed. Я не понял как это к моему вопросу относится. у меня <appender name="ErrorFileAppender" type="log4net.Appender.FileAppender"> ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:44 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleИзопропилFullKettle, Moreover, log4net will not revert to System.Console.Out or System.Console.Error when its designated output stream is not opened, is not writable or becomes full. This avoids corrupting an otherwise working program by flooding the user's terminal because logging fails. However, log4net will output a single message to System.Console.Error and System.Diagnostics.Trace indicating that logging can not be performed. Я не понял как это к моему вопросу относится Проверяйте error-вывод консоли или трассу на предмет появления ошибки. примерный перевод: Однако, log4net выдаст единичное сообщение в System.Console.Error и System.Diagnostics.Trace, сообщающее о невозможности обработки логирования ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:51 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleЭто вообще - моя вина что я не предусмотрел такое? в этом вины здесь нет а вот место для хранения лога выбрано неудачно логирование в файл - частный случай. Писать можно в windows log, syslog, сокет, консоль, почту, базу данных, веб-сервис, собственный плагин подключить. Что и как проверять в каждом случае? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 12:51 |
|
Log4Net
|
|||
---|---|---|---|
#18+
ИзопропилFullKettleЭто вообще - моя вина что я не предусмотрел такое? в этом вины здесь нет а вот место для хранения лога выбрано неудачно логирование в файл - частный случай. Писать можно в windows log, syslog, сокет, консоль, почту, базу данных, веб-сервис, собственный плагин подключить. Что и как проверять в каждом случае? Место не я выбирал. Инсталлятора не было и приложение запихнули в Program Files. Ну и в описании не было, что в данную папку "инсталлировать" нельзя. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 13:00 |
|
Log4Net
|
|||
---|---|---|---|
#18+
Arm79FullKettleпропущено... Я не понял как это к моему вопросу относится Проверяйте error-вывод консоли или трассу на предмет появления ошибки. примерный перевод: Однако, log4net выдаст единичное сообщение в System.Console.Error и System.Diagnostics.Trace, сообщающее о невозможности обработки логирования Это кто-нибудь делает? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 13:01 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleМесто не я выбирал неявно выбрал - If the path is relative it is taken as relative from the application base directory ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 13:08 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleArm79пропущено... Проверяйте error-вывод консоли или трассу на предмет появления ошибки. примерный перевод: Однако, log4net выдаст единичное сообщение в System.Console.Error и System.Diagnostics.Trace, сообщающее о невозможности обработки логирования Это кто-нибудь делает? что именно? Я делаю, в частности перехват выводов консольного аппендера и пишу в приложении в табпэйдже, и параллельно можно Rolling аппендер, и так же по IP в приблудку, которая показывает логи от многих приложений в сети. Так же в базу и в сервис. у вас надо конфиг изменить, если используется конфиг файл, а не захардкодировано. Я в инсталляторе делаю минимальные исправления настроек лог4нет, там же моно проверить и доступность фолдера для записи и т.д., и т.п... ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 13:20 |
|
Log4Net
|
|||
---|---|---|---|
#18+
WinnipuhЯ в инсталляторе делаю минимальные исправления настроек лог4нет, там же моно проверить и доступность фолдера для записи и т.д., и т.п... Что за инсталлятор? FullKettleЭто кто-нибудь делает? Я лично не делаю. Пишу в профиле пользователя. Там права достаточны. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 13:30 |
|
Log4Net
|
|||
---|---|---|---|
#18+
Arm79WinnipuhЯ в инсталляторе делаю минимальные исправления настроек лог4нет, там же моно проверить и доступность фолдера для записи и т.д., и т.п... Что за инсталлятор? FullKettleЭто кто-нибудь делает? Я лично не делаю. Пишу в профиле пользователя. Там права достаточны. А вот у меня пользователю прав не дали. Тестировали с админскими правами, а потом бац...и логов нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 14:38 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleА вот у меня пользователю прав не дали в собсвтенном профиле не дали? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 14:40 |
|
Log4Net
|
|||
---|---|---|---|
#18+
ИзопропилFullKettleА вот у меня пользователю прав не дали в собсвтенном профиле не дали? Так. Мы чуть в разных степях. Логи писались в файл, который находился в папке, которая была в той же директории, что и приложение (В какой-то подпапке Program Files). Так права пользвателю (не мне) дали только на чтение-запись всех файлов в директории приложения, а в подпапках - не дали. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 14:43 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleфайл, который находился в папке, которая была в той же директории, что и приложение это неудачное решение ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 14:47 |
|
Log4Net
|
|||
---|---|---|---|
#18+
Arm79WinnipuhЯ в инсталляторе делаю минимальные исправления настроек лог4нет, там же моно проверить и доступность фолдера для записи и т.д., и т.п... Что за инсталлятор? FullKettleЭто кто-нибудь делает? Я лично не делаю. Пишу в профиле пользователя. Там права достаточны. я делаю в WiX инсталлятор приложения, и там в своих функциях на шарпе делаю в диалогах конфигурацию и проверки и т.д.. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 14:49 |
|
Log4Net
|
|||
---|---|---|---|
#18+
ИзопропилFullKettleфайл, который находился в папке, которая была в той же директории, что и приложение это неудачное решение В данном случае правильным решением было бы написать в инструкции как перенастроить и указать, что это - обязательно. Так как у юзеров прав по-минимуму ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 14:54 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleВ данном случае правильным решением было бы написать в инструкции как перенастроить и указать, что это - обязательно. Так как у юзеров прав по-минимуму именно поэтому нужно не инструкции писать, а журнал писать туда где предусмотрено создателями рперационной системы - в пользовательский профиль ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 15:05 |
|
Log4Net
|
|||
---|---|---|---|
#18+
FullKettleВ данном случае правильным решением было бы написать писать логи в C:\Users\XXXXXXX\AppData\CoolProgram к примеру. Зачем пользователю ковыряться в логах? Еще во времен висты было понятно, что в Program Files изменяемым данным делать нечего. FullKettleТак как у юзеров прав по-минимуму Если вы знали, что у юзеров будет прав по минимуму, почему не протестировали свой продукт от имени одного из таких юзеров? Winnipuhя делаю в WiX инсталлятор приложения, и там в своих функциях на шарпе делаю в диалогах конфигурацию и проверки и т.д.. Спасибо, посмотрю. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 15:05 |
|
Log4Net
|
|||
---|---|---|---|
#18+
ИзопропилFullKettleВ данном случае правильным решением было бы написать в инструкции как перенастроить и указать, что это - обязательно. Так как у юзеров прав по-минимуму именно поэтому нужно не инструкции писать, а журнал писать туда где предусмотрено создателями рперационной системы - в пользовательский профиль не догадался ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 15:13 |
|
Log4Net
|
|||
---|---|---|---|
#18+
Arm79FullKettleВ данном случае правильным решением было бы написать писать логи в C:\Users\XXXXXXX\AppData\CoolProgram к примеру. Зачем пользователю ковыряться в логах? Еще во времен висты было понятно, что в Program Files изменяемым данным делать нечего. FullKettleТак как у юзеров прав по-минимуму Если вы знали, что у юзеров будет прав по минимуму, почему не протестировали свой продукт от имени одного из таких юзеров? Winnipuhя делаю в WiX инсталлятор приложения, и там в своих функциях на шарпе делаю в диалогах конфигурацию и проверки и т.д.. Спасибо, посмотрю. не знал, но если хорошенько подумать - мог бы догадаться. Всегда пишу логи туда же, где и приложение. Чтобы искать проще было ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2014, 15:14 |
|
|
start [/forum/topic.php?fid=20&msg=38528092&tid=1403410]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 317ms |
total: | 460ms |
0 / 0 |