Досвід використання бібліотеки журналів Boost.Log? [зачинено]


88

Я розглядаю можливість почати використовувати бібліотеку ведення журналу Boost.Log . Хтось використовує Boost.Log? Будь ласка, поділіться своїм досвідом з цього приводу.

Інші бібліотеки, які я розглядаю, - це Apache log4cxx (видається нудним встановлювати, але мої товариші по команді хочуть чогось простого для початку) та Pantheios (та сама проблема, оскільки вона працює з додатковим фронтальним та зворотним кінцями).


У мене є своя система реєстрації, але я розглядаю можливість переходу, так цікаве питання!
Седрік Х.

21
bloost.log ДУЖЕ ДУЖЕ ДУЖЕ повільний, шалено складний у налаштуванні, він ледве пройшов процес перевірки, і станом на 1.47 все ще немає у випуску Boost. Це одна з тих бібліотек, яка може не потрапити на основну лінію протягом найближчих кількох років, тому наразі log4c тощо є кращими варіантами.

4
Насправді було пояснено, що це потребує певних виправлень і що поточна мета випуску - це літо - покинуті бібліотеки не мають розкладу та сховища незавершеного виробництва. Крім того, автор повідомив, що користувач повідомив ДУЖЕ ДУЖЕ хорошу продуктивність. Складність корисна в деяких контекстах, і якщо вона вам не потрібна, ви можете просто використовувати прості макроси, що надаються. Отже, я не згоден з вашим коментарем.
Klaim

40
Я б дуже хотів, щоб StackOverflow припинив закривати очевидно корисні питання, подібні до цього, як "не конструктивні".
Стефан

6
Цікаво, як справи в 2015 році? Можливо, використання 2.0 - це «ОК» зараз?
Вінкас Даргіс,

Відповіді:


41

ОНОВЛЕННЯ : З моменту написання цього тексту Boost.Log я замінив своїм власним реєстрацією, головним чином тому, що я вирішив позбутися всіх залежностей Boost у всіх своїх проектах з різних причин. Якщо ви добре користуєтеся Boost, я думаю, Boost.Log все ще є дійсним вибором, судячи з відповіді Klaim .

Далі мій досвід роботи з Boost.Log у 2010 році.


Я успішно інтегрував Boost.Log у свій ігровий движок, і я можу говорити про це лише хороші речі. Звичайно, користуватися трохи рано, оскільки версія 2 стане фактичною версією, яка стане офіційним Boost.Log.

Пам'ятайте, що доступна версія "1.0" не підтримується. Щоб отримувати оновлення, ви повинні використовувати версію з кровотоком (багажник), яка може стати нестабільною. Враховуйте це, якщо ви збираєтеся використовувати цю версію в будь-яких серйозних проектах. Якщо ви не боїтесь застосовувати версії, що кровоточать, або майбутні поломки, тоді подумайте. Це дуже приємно використовувати, як це є в його поточному стані.

Я давно вважав, що ієрархічна система реєстрації в log4j / log4cxx є вищою, але Boost.Log змусив мене думати інакше. Фільтрування та атрибути є набагато гнучкішими.

Конструкція раковин, розділених інтерфейсом / серверною базою, дозволяє дуже легко додавати додаткові серверні панелі. Не потрібно турбуватися про проблеми синхронізації або фільтрації, що обробляється інтерфейсом. Бібліотека також постачається з великою кількістю бекендів, ротаційними файлами, консоллю, системним журналом, реєстром подій Windows тощо.

Я написав власні розмитки; один переходить на ігрову консоль, а інший - на своєрідну систему сповіщення про більш серйозні події. Було простіше, ніж я очікував, все було готово і запрацювало всього за кілька хвилин.

Нарешті, але не менш важливим є те, що супровідник / розробник також дуже корисний. Ви отримаєте велику допомогу на форумах проекту. Тільки минулими вихідними він виправив дві помилки (з них одну основну), про які я повідомляв :-)


21

ОНОВЛЕННЯ: Я використовую Boost.Log у системі ігрового движка, і я дуже задоволений цим. Він швидкий, безпечний для різьблення та дуже гнучкий, коли вам це потрібно.

Boost.Log повинен бути забезпечений усіма бібліотеками Boost у найближчому випуску цього року (2013).


Boost.Log призначений для налаштування системи журналу над ним. Якщо ви прочитаєте документацію, то побачите, що вона настільки гнучка, що будь-яка система реєстрації, про яку ви думаєте, може бути побудована за допомогою неї (наприклад, реєстрація на віддаленому комп’ютері).

Отже, існують макроси, які полегшують використання у простих проектах, але я думаю, що це така бібліотека, яка корисна переважно людям, які справді розуміються на ведення журналу та хочуть створити певну архітектуру для свого застосування.

Щодо продуктивності, я пам’ятаю, що під час подання були проблеми, які спричинили його повільне порівняно з іншими (менш гнучкими) бібліотеками журналювання, але оскільки це був чернетка і перший реліз ще не вийшов, я б не турбувався, якщо ви не кодуєте критично важливе за часом застосування.

Зрештою, я думаю, це просто занадто "нове", щоб оцінювати "зараз". Не існує жодної такої гнучкої бібліотеки журналів, як ця, і я не впевнений, чи багато людей відчують потребу в її використанні.

Оновлення: нещодавній обмін електронною поштою з автором Boost.Log привів до деяких даних, які свідчать про те, що Boost.Log, безумовно, є чудовою альтернативою для швидкого реєстрації.


7

Нещодавно я розглядав можливість впровадження системи реєстрації на проекті, який я починав.

Я спробував log4cxx, коли ви про це згадуєте, його справді дуже нудно встановлювати. Мені знадобилося кілька годин, щоб змусити його скомпілювати під VS2012 (з іншими бібліотеками залежностей ...), а потім він просто розбився, коли я використав його у своєму проекті. Звичайно, якісь дивні речі відбуваються із невідповідністю стандартних бібліотек, але не міг цього зрозуміти.

Тому я перейшов на log4cpp, який я запустив і запустив буквально за кілька хвилин. Я вважаю його елегантним і легким, саме тим, що мені потрібно. Він має велику перевагу в тому, що має ті самі функції, що і відомий log4j & co. системи реєстрації, що може бути справжнім плюсом для вашої роботи в команді (конфігурація через конфігураційний файл тощо)

Що стосується продуктивності, потрібен один виклик функції, щоб перевірити, чи активний реєстратор рівня повідомлення, а потім один виклик функції, щоб фактично записати дані.

Маючи кілька домашніх макросів (щоб додати LINE & co. До повідомлень), log4cpp справді виявився корисним у моєму проекті.

На жаль, я не пробував Boost.Log, тому не можу про це говорити, але сподіваюся, цей відгук все одно буде корисним для вас, якщо ви вирішите не йти шляхом Boost.Log.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.