Здравствуйте, Nikolay_P_I, Вы писали:
N_P>Именно серьезно — не просто в файл "до востребования", а в базу данных, например. И что-б админ переодически просматривал на предмет предупреждений ?
Я использовал чтобы письма отсылать, если исключение не поймано. в БД не писал.
N_P>Что-то настораживает при уже 5-ти летней давности проекте полное отсутствие GUI для настройки конфигов. Может все на него давно забили и забросили ?
Да, проект скорее мёртв, чем жив.
N_P>Или кто иные системы логирования и оповещения использует?
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>Именно серьезно — не просто в файл "до востребования", а в базу данных, например. И что-б админ переодически просматривал на предмет предупреждений ? N_P>Что-то настораживает при уже 5-ти летней давности проекте полное отсутствие GUI для настройки конфигов. Может все на него давно забили и забросили ? N_P>Или кто иные системы логирования и оповещения использует ?
А что мешает написать TraceListener, который будет писать "в базу данных, например" и работать с ним стандартным образом через TraceSource?
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, _FRED_, Вы писали:
_FR>А что мешает написать TraceListener, который будет писать "в базу данных, например" и работать с ним стандартным образом через TraceSource?
Ты с log4net работал? Там вся суть в фильтрах, а не в аппендерах.
Здравствуйте, adontz, Вы писали:
_FR>>А что мешает написать TraceListener, который будет писать "в базу данных, например" и работать с ним стандартным образом через TraceSource?
A>Ты с log4net работал? Там вся суть в фильтрах, а не в аппендерах.
И чем не устраивают фильтры в System.Diagnostics?
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, _FRED_, Вы писали:
N_P>>Именно серьезно — не просто в файл "до востребования", а в базу данных, например. И что-б админ переодически просматривал на предмет предупреждений ? N_P>>Что-то настораживает при уже 5-ти летней давности проекте полное отсутствие GUI для настройки конфигов. Может все на него давно забили и забросили ? N_P>>Или кто иные системы логирования и оповещения использует ?
_FR>А что мешает написать TraceListener, который будет писать "в базу данных, например" и работать с ним стандартным образом через TraceSource?
А зачем страдать "велосипедизмом" ? В смысле — реализовывать все эти механизмы заново и идти по тем же граблям ? У нас уже есть неплохая, но узкозаточенная система логирования — мы просто смотрим в сторону стандартных — не перейти ли на одну из них. Можно коммерческих.
Здравствуйте, adontz, Вы писали:
N_P>>Или кто иные системы логирования и оповещения использует? A>Перешёл на NLog.
GUI configuration tool для него есть ? На их форуме последний вопрос на этот счет от 2007 года, да и тот остался без ответа. На мой взгляд — если не существует ни встроенных, ни свободных ни коммерческих средств для редактирования конфигурации конечным пользователем или администратором — системой реально, для серьезных продуктов — не пользуются.
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>>>Именно серьезно — не просто в файл "до востребования", а в базу данных, например. И что-б админ переодически просматривал на предмет предупреждений ? N_P>>>Что-то настораживает при уже 5-ти летней давности проекте полное отсутствие GUI для настройки конфигов. Может все на него давно забили и забросили ? N_P>>>Или кто иные системы логирования и оповещения использует ?
_FR>>А что мешает написать TraceListener, который будет писать "в базу данных, например" и работать с ним стандартным образом через TraceSource?
N_P>А зачем страдать "велосипедизмом" ? В смысле — реализовывать все эти механизмы заново и идти по тем же граблям ?
Какие конкретно механизмы и почему заново? Заново по сравнению с чем? Добавить строчку в БД или отправить письмо — это вы "велосипедизмом" называете?
N_P>У нас уже есть неплохая, но узкозаточенная система логирования — мы просто смотрим в сторону стандартных — не перейти ли на одну из них. Можно коммерческих.
Так почему бы не начать с самой стандартной из тех, что может быть?
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, IT, Вы писали:
N_P>>GUI configuration tool для него есть ? IT>Какой ещё GUI? У l4n свободный формат логов.
Для настроек в какую директорию писать, каковы лимиты, куда слать письма, где база данных и какой к ней пароль. Все то, что выставляет конечный админ под свои нужды.
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>>>GUI configuration tool для него есть ? IT>>Какой ещё GUI? У l4n свободный формат логов.
N_P>Для настроек в какую директорию писать, каковы лимиты, куда слать письма, где база данных и какой к ней пароль. Все то, что выставляет конечный админ под свои нужды.
И что такой GUI будет редактировать, app.config?
Если нам не помогут, то мы тоже никого не пощадим.
_FR>>>А что мешает написать TraceListener, который будет писать "в базу данных, например" и работать с ним стандартным образом через TraceSource?
N_P>>А зачем страдать "велосипедизмом" ? В смысле — реализовывать все эти механизмы заново и идти по тем же граблям ?
_FR>Какие конкретно механизмы и почему заново? Заново по сравнению с чем? Добавить строчку в БД или отправить письмо — это вы "велосипедизмом" называете?
Ну так сам TraceListener писать ? Писать. Конфигуратор строки подключения писать ? — писать.
Что остается ? Использование стандартных Debug/Trace(level) вместо своих static Log.WriteLine(...) ? В чем смысл ? Нормальный Listener написать — намного сложнее, чем свой static для его вызова.
N_P>>У нас уже есть неплохая, но узкозаточенная система логирования — мы просто смотрим в сторону стандартных — не перейти ли на одну из них. Можно коммерческих. _FR>Так почему бы не начать с самой стандартной из тех, что может быть?
Здравствуйте, Nikolay_P_I, Вы писали:
_FR>>>>А что мешает написать TraceListener, который будет писать "в базу данных, например" и работать с ним стандартным образом через TraceSource? N_P>>>А зачем страдать "велосипедизмом" ? В смысле — реализовывать все эти механизмы заново и идти по тем же граблям ? _FR>>Какие конкретно механизмы и почему заново? Заново по сравнению с чем? Добавить строчку в БД или отправить письмо — это вы "велосипедизмом" называете?
N_P>Ну так сам TraceListener писать ? Писать.
То есть я прав:
Добавить строчку в БД или отправить письмо — это вы "велосипедизмом" называете?
Это же и есть листенер. ИМХО, написать кастомный листенер, который нужную вам строчку вставит в БД или отправит письмом (возможно, хитро и красиво оформленным) буудет быстрее, чем разобраться тем, как настроить в том же лог4нете требуемый формат. Это не тот елосипедизм, которого следет избег. Это мелочи. И своём кастомном листнере я смогу сформировать письмо красивее и подробнее, чем вы в дефолтовом в любой готовой системе логирования.
N_P>Конфигуратор строки подключения писать ? — писать.
Это опять из раздела ГУИ?
N_P>Что остается ? Использование стандартных Debug/Trace(level) вместо своих static Log.WriteLine(...) ? В чем смысл ? Нормальный Listener написать — намного сложнее, чем свой static для его вызова.
Почему сложнее? Вот видно уже, что вы просто не пробовали, а вам уже не нравится. Да и читали не достаточно внимательно. Никаких "Debug/Trace" — TraceSource. "Debug/Trace" — это от бедности первого фреймворка.
N_P>>>У нас уже есть неплохая, но узкозаточенная система логирования — мы просто смотрим в сторону стандартных — не перейти ли на одну из них. Можно коммерческих. _FR>>Так почему бы не начать с самой стандартной из тех, что может быть? N_P>Потому что его нет стандартного.
Ваше право так считать, как и верить эфир Спасибо, теперь ясно, что тратить время переубеждая вас безсмысленно.
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, IT, Вы писали:
N_P>>>>GUI configuration tool для него есть ? IT>>>Какой ещё GUI? У l4n свободный формат логов.
N_P>>Для настроек в какую директорию писать, каковы лимиты, куда слать письма, где база данных и какой к ней пароль. Все то, что выставляет конечный админ под свои нужды.
IT>И что такой GUI будет редактировать, app.config?
А что такого ? Как я прочитал (может что то не так понял) — это наружный способ конфигурации NLog.
Кто его будет редактировать ? User ? Да его к app.config на пушечный выстрел подпускать нельзя.
Мы через configuration API из своей программы ? Теряется гибкость внешней системы логирования — будет завязка только на то, что необходимо. Появится новый Target — не сконфигуришь. А отсутствие GUI библиотек или программ для обобщенного конфигурирования — верный признак, что им особо никто не занимается.
Здравствуйте, _FRED_, Вы писали:
_FR>То есть я прав: _FR>
Добавить строчку в БД или отправить письмо — это вы "велосипедизмом" называете?
_FR>Это же и есть листенер. ИМХО, написать кастомный листенер, который нужную вам строчку вставит в БД или отправит письмом (возможно, хитро и красиво оформленным) буудет быстрее, чем разобраться тем, как настроить в том же лог4нете требуемый формат. Это не тот елосипедизм, которого следет избег. Это мелочи. И своём кастомном листнере я смогу сформировать письмо красивее и подробнее, чем вы в дефолтовом в любой готовой системе логирования.
То есть для вас вот так написать потокобезопасный, буферизируемый (с защитой от переполнения), отказоустойчивый (в том числе от временного и не очень отключения базы данных) и быстрый листенер "намного проще" ? А потом еще пару таких хотя бы для писем и файлов (с защитой от переполнения) ? Снимаю шляпу — мы не настолько круты и надеемся на сторонние продукты.
N_P>>Конфигуратор строки подключения писать ? — писать. _FR>Это опять из раздела ГУИ?
Да. Это важно. Пользователи не то что его хотят — требуют. Даже махровые админы.
N_P>>Что остается ? Использование стандартных Debug/Trace(level) вместо своих static Log.WriteLine(...) ? В чем смысл ? Нормальный Listener написать — намного сложнее, чем свой static для его вызова. _FR>Почему сложнее? Вот видно уже, что вы просто не пробовали, а вам уже не нравится. Да и читали не достаточно внимательно. Никаких "Debug/Trace" — TraceSource. "Debug/Trace" — это от бедности первого фреймворка.
Каюсь — TraceSource прошел мимо. Но как я бегло посмотрел — это просто расширение Debug/Trace — удобнее, перегрузок больше. Конфигурация почти та же.
Здравствуйте, adontz, Вы писали:
A>Да, проект скорее мёртв, чем жив. N_P>>Или кто иные системы логирования и оповещения использует?
A>Перешёл на NLog.
+1 за NLog. Тоже перешел. Практически ничего в исходниках менять не пришлось, только конфиг
Здравствуйте, QrystaL, Вы писали:
N_P>>Или кто иные системы логирования и оповещения использует ?
QL>Enterprise Library. Основано на стандартных средствах System.Diagnostics, можно использовать в сочетании с Policy Injection.
Как я понял оно требует инсталляции чего-то на машине. Нам категорически не подходит — некоторые заказчики требуют установки копированием.
Здравствуйте, Nikolay_P_I, Вы писали:
_FR>>То есть я прав: _FR>>
Добавить строчку в БД или отправить письмо — это вы "велосипедизмом" называете?
_FR>>Это же и есть листенер. ИМХО, написать кастомный листенер, который нужную вам строчку вставит в БД или отправит письмом (возможно, хитро и красиво оформленным) буудет быстрее, чем разобраться тем, как настроить в том же лог4нете требуемый формат. Это не тот елосипедизм, которого следет избег. Это мелочи. И своём кастомном листнере я смогу сформировать письмо красивее и подробнее, чем вы в дефолтовом в любой готовой системе логирования.
N_P>То есть для вас вот так написать потокобезопасный, буферизируемый (с защитой от переполнения), отказоустойчивый (в том числе от временного и не очень отключения базы данных) и быстрый листенер "намного проще" ? А потом еще пару таких хотя бы для писем и файлов (с защитой от переполнения) ? Снимаю шляпу — мы не настолько круты и надеемся на сторонние продукты.
Какая потокобезопастность вам нужна в листенере, который пишет в БД или отправляет письмо?
N_P>>>Конфигуратор строки подключения писать ? — писать. _FR>>Это опять из раздела ГУИ? N_P>Да. Это важно. Пользователи не то что его хотят — требуют. Даже махровые админы.
Вы сначала покажите хоть один Гуй из того, что вам подошёл бы, а потом скажите, что в нём такого, чего нельзя сделать хотя бы за два-три дня. Потом поговорим. Кстати, написание такого гуя к стандартным классам будет много проце чем к тому же лог4нету — ибо настроек меньше и они не такие запутанные и не такие развесистые как в лог4нете.
N_P>>>Что остается ? Использование стандартных Debug/Trace(level) вместо своих static Log.WriteLine(...) ? В чем смысл ? Нормальный Listener написать — намного сложнее, чем свой static для его вызова. _FR>>Почему сложнее? Вот видно уже, что вы просто не пробовали, а вам уже не нравится. Да и читали не достаточно внимательно. Никаких "Debug/Trace" — TraceSource. "Debug/Trace" — это от бедности первого фреймворка. N_P>Каюсь — TraceSource прошел мимо. Но как я бегло посмотрел — это просто расширение Debug/Trace — удобнее, перегрузок больше. Конфигурация почти та же.
И чем же, позвольте поинтересоваться, "Debug/Trace — удобнее" — "перегрузками"? Не на то смотрите. Тогда, конечно, и запорожец удобнее хаммера — их больше в гараж въезжает.
Help will always be given at Hogwarts to those who ask for it.