Здравствуйте, AndrewVK, Вы писали:
AVK>Для веба отдельный пакет надо. А вот для log4net — сильно не уверен.
Это вопрос субъетивный. Ты похоже с log4net дальше чем попыток познакомится не заходил. Я тоже делал несколько подходов к снаряду, пока не разобрался. Зато теперь для меня это вопрос копипасты, ну или отдельного пакета.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
IT>Здравствуйте, nigh, Вы писали:
N>>?
IT>Нет, конечно. Речь о полноценном решении со всеми плюшками, удобным API и шаблонами конфига. Можно даже датабазу через linq2db прикрутить.
Т.е. сделать еще один уровень абстракции над абстракциями log4net? Если да, то зачем?
И т.п. Т.е. речь идёт о вменяемом API, которого так не хватает log4net. Плюс вспомогательные вещи по инициализации и настройке. Пару классов для реализации push/pop логгеров, отложенного логирования, асинхронные методы, экстеншены для тех же исключений, чтобы можно было писать exception.Log() и т.п.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, QrystaL, Вы писали:
N>>шел 2016 год. Решения "из коробки" со словами "Simple" в названии требуют "microsoft tool" или visual studio чтобы просто посмотреть логи (и даже это делается не с первой попытки — см. текст про force carriage returns) QL>Че-то вы не дочитали, сразу с шашкой наголо кинулись критиковать QL>Процитированный отрывок это дополнительный функционал (например, в студии в Output всё дублируется).
QL>Буквально следующий же абзац
QL>You can add “trace listeners”. The simple tracing above just uses the Default trace listener. .NET also includes listeners for logging to the Event Log, a text file, an XML file, or the Console.
А вы моете не абзац процитировать, а набросать минимальный код, который выведет TraceInformation("Fff") в текстовый файл? И не рядом с приложением, куда, как правило, нельзя писать кому попало (в Program Files же оно), а в папку приложения под профилем пользователя?
Здравствуйте, AndrewVK, Вы писали:
AVK>>>Определить отсутствие консоли у процесса — не рокетсайнс. Создать набор стандартных юзкейсов для для разных типов приложений — тоже. N>>Ну то есть сначала заявляем что дефолтный сценарий — консоль, потом, что в Winforms лог не нужен, а теперь вот дошли наконец до мысли, что дефолтные сценарии у всех разные
AVK>Тебе поспорить хочется, что ты постоянно передергиваешь? Да, дефолтный сценарий консоль, потому что логгинг чаще всего требуется в консольном софте. Следующий этап — готовые сценарии. Наконец уровень ниже — полная конфигурация.
Кажется, поспорить — это вам. Ваш оппонент говорит о том, что даже ваши предложения не подходят под требования топикстартера:
Почему нельзя сделать логгер, которому можно просто скзаать "запиши лог!" — и он запишет лог.
Не о том, что они не подходящи или сложны вообще, а о том, что не удовлетворяют требованиям топикстартера У вас же помимо как "сделать логгер" надо его ещё и настроить соответствующим образом, а уж если надо настроивать, то одним каким-то вызовом это делать или в конфиге что прикрутить уже не так важно. Если мы всё ещё решаем проблему топикстартера, как ваш оппонент, а не обсуждаем размахиваем шашкой за что-то ещё другое.
Здравствуйте, IT, Вы писали:
IT>Я про рапер над log4net, который можно будет легко поставить и легко использовать.
Нафиг-нафиг. Log4Net — эт привет из мира явы, с оверинженерингом во все поля, техдолгом срезу по подключении и исключительно текстовым ( ) форматом вывода.
С учётом ETW / sem logging в стиле
Здравствуйте, Sinix, Вы писали:
S>Нафиг-нафиг. Log4Net — эт привет из мира явы, с оверинженерингом во все поля, техдолгом срезу по подключении и исключительно текстовым ( ) форматом вывода.
Но это была не реклама логфонета, а предложение полезняшки для облегчения работы логфонетом, раз уж уже и так пришлось.
Философия кодджема как раз в том и состоит чтобы облегчать жизнь программисту, зачем зарубать хорошие намерения в самом начале?
Здравствуйте, IT, Вы писали:
IT>Это вопрос субъетивный. Ты похоже с log4net дальше чем попыток познакомится не заходил. Я тоже делал несколько подходов к снаряду, пока не разобрался. Зато теперь для меня это вопрос копипасты, ну или отдельного пакета.
И я времени на разбирательство потратил много, быстрее бы написал свое урезнанное решение, заточенное под мои нужды. Пусть и не такое гибкое.
Но тут проблема в том что log4net является своего рода стандартом. Знать обязан.
Здравствуйте, Venom, Вы писали:
V>Философия кодджема как раз в том и состоит чтобы облегчать жизнь программисту, зачем зарубать хорошие намерения в самом начале?
Ну вот по-моему лучший способ облегчить — не использовать log4net вообще.
Тем более что есть common-logging. Точно ещё один нужен?
Здравствуйте, AndrewVK, Вы писали:
S>>Но тут проблема в том что log4net является своего рода стандартом. Знать обязан. AVK>Не является.
А вы откройте поиск по NuGet-пакетам и введите "log". Увидите что log4net находится вверху списка с огромным отрывом от остальных. Почти 4 млн. скачиваний пакета.
4 млн. -- это дофига вообще то для библиотеки.
Получается что с большой вероятностью вы будете работать с проектом, в котором уже используется log4net. И если сходу вы будете уговаривать от него отказаться -- на вас будут косо смотреть.
Понимаю что не нравится -- мне тоже не нравится. Но есть вещи объективные. JavaScript тоже никому не нравится, но то что это самый популярный язык мира -- неоспоримо.
Здравствуйте, Shmj, Вы писали:
S>А вы откройте поиск по NuGet-пакетам и введите "log". Увидите что log4net находится вверху списка с огромным отрывом от остальных. Почти 4 млн. скачиваний пакета.
Ввел, не увидел.
S>4 млн. -- это дофига вообще то для библиотеки.
Дофига. Но это не делает ее стандартом.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
Здравствуйте, Shmj, Вы писали:
S>Но тут проблема в том что log4net является своего рода стандартом. Знать обязан.
Это ни в одном глазу не стандарт, а нормальная (с точки зрения ява программистов "конфиг туда, конфиг сюда") библиотека логгирования. Пользуюсь уже много лет и особых нареканий не вызывает. Альтернативы есть, и не мало.
Нет, я имел в виду типизированный лог. От типизированного API для каждого из сообщений и до записи произвольных данных.
С поддержкой Rx и анализа сообщений в прямом эфире, в том числе out of process.
В общем см содержимое вот этого пакета — это если нужен полный хардкор.
Если попроще в использовании — см SLAB. Вот вывод на консоль в произвольном формате:
Здравствуйте, Sinix, Вы писали:
S>Здравствуйте, Sharov, Вы писали:
S>>>и исключительно текстовым ( ) форматом вывода. S>>Если я правильно понял, что имелось в виду под текстовым форматом, то вот --http://stackoverflow.com/questions/1147103/log4net-xml-output
S>Нет, я имел в виду типизированный лог. От типизированного API для каждого из сообщений и до записи произвольных данных.
Понятно, есть такая штука -- http://serilog.net/
Я, правда, не использовал пока и не планирую.
Здравствуйте, AndrewVK, Вы писали:
AVK>Дофига. Но это не делает ее стандартом.
"Своего рода" стандартом. Когда все знают и все используют (под все имею в виду большинство, т.к. это самая популярная библиотека для логирования) -- то в некотором роде это уже негласный стандарт.