LINUX.ORG.RU

logging + C++


0

0

Посоветуйте небольшую либо для логов для C/C++. Нужно уметь писать логи в файл, желательно быть thread safe (хотя и не обязательно) и самое главное иметь ротацию логов. То есть скажем если лог больше чем X зазипуй его в отдельный файл и сам разберись с его названием. Пусть зипы себе копятся. Посмотрел на то что нашел:

log4cplus:
Понравился пример HelloWorld: http://log4cplus.sourceforge.net/hello_world.html, но немного пугает 2004 год последнего релиза

log4cpp:
Год не сильно лучше: 2005. Документации мало.

log4cxx:
Что-то похоже большое. Кроме того Apache fork проекта в Яве, а с одним уже довелось иметь дело (Axis-Cpp) и впечатления не самые приятные.

log4c:
Как-то не выглядит зрело.

Немного глаза разбегаются. Что посоветуете?

функции записи логов я писал сам, что и рекомендую. thread safe элементарно делается спомощью мьютексов.
а вообще - есть ли какие-либо особые пожелания?

generatorglukoff ★★
()
Ответ на: комментарий от generatorglukoff

> функции записи логов я писал сам, что и рекомендую. thread safe
> элементарно делается спомощью мьютексов.
Ну я и написал. Но есть проблема с размером файлов. Нужен logrotate. Руками если писать то много разных issues. Хочется как-то независимо от логики самой апликации.

> а вообще - есть ли какие-либо особые пожелания?
1. logrotate (вернее не столько rotate сколько архивирование время от времени в отдельные архивы кусков размером X либо в определенное время (скажем раз в день))
2. простота
3. возможность задать разные appender'ы (optional)

В принципе 1 и 3 вроде есть во всех. Интересен опыт, что понравилось больше?

dissident ★★
() автор топика

> Что посоветуете?

syslog

1. Thread-safe.

2. logrotate с настройкой под syslog входит в каждый приличный дистрибутив.

3. Есть варианты вроде syslog-ng, которые существенно расширяют возможности.

4. Большим плюсом является стандартность (по крайней мере, де факто).

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от dissident

>но немного пугает 2004 год последнего релиза

сразу видно красноглазега. :Е

>issues.

> апликации.

> appender'ы (optional)

Плюсы еще рано, учи русский.

ничего личного.

anonymous
()
Ответ на: комментарий от dissident

log4cxx понравилось больше log4cpp. Вообще говоря, все они форки log4j.

mv ★★★★★
()

http://pantheios.sourceforge.net/

Pantheios is an Open Source C/C++ Logging API library, offering an optimal combination of 100% type-safety, efficiency, genericity and extensibility. It is simple to use and extend, highly-portable (platform and compiler-independent) and, best of all, it upholds the C tradition of you only pay for what you use.

kondor ★★★
()
Ответ на: комментарий от kondor

Спасибо всем за ответы! Буду пробовать.

dissident ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.