powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Log библиотека - порекомендуйте
12 сообщений из 12, страница 1 из 1
Log библиотека - порекомендуйте
    #39620458
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужна библиотека/фреймворк для добавления логгирования в длл, чтобы можно было разрешить, запретить, писать в файл, в базу и т.д. Т.е. что-то похожее на log4net, но для с++ и кросс-платформное: Windows, Mac OS X, Linux.
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620530
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620532
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv https://habrahabr.ru/post/313686/

Spdlog хвалят

спасибо, полезная ссылка.

Что примечательно, про g3log пишут, что и потоко-безопасный и умеет в случае segfault написать об этом в лог и улететь вместе с парентом
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620569
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне вот не совсем понятно, почему некоторые критикуют асинхронный режим логгирования
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620627
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинМне вот не совсем понятно, почему некоторые критикуют асинхронный режим логгирования

Ответ очевиден, если подумать.
Если ты логируешь асинхронно, данные для логирования должны где-то сохраняться временно, до момента записи в логи.
Если это так, то запись в лог попросту не гарантирована. А это тогда значит, что логи включаются в такой режим,
когда всё логирование может иногда быть выключенным. А тогда зачем вообще логи?

Это как бы допустимо иногда, но не всем подходит.

Кроме этого, это место, где все данные сохраняются, можно назвать его контекст логирования, должно быть защищено от гонок в многопоточном окружении, должно иметь достаточно большой буфер для хранения временных данных для логов.
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620656
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivРолг ХупинМне вот не совсем понятно, почему некоторые критикуют асинхронный режим логгирования

Ответ очевиден, если подумать.
Если ты логируешь асинхронно, данные для логирования должны где-то сохраняться временно, до момента записи в логи.
Если это так, то запись в лог попросту не гарантирована. А это тогда значит, что логи включаются в такой режим,
когда всё логирование может иногда быть выключенным. А тогда зачем вообще логи?

Это как бы допустимо иногда, но не всем подходит.

Кроме этого, это место, где все данные сохраняются, можно назвать его контекст логирования, должно быть защищено от гонок в многопоточном окружении, должно иметь достаточно большой буфер для хранения временных данных для логов.

ну, да, ясно, что чудес не бывает, очередь, память занимает, обработка, но с другой стороны - в прикладной части вызвал функцию записи в лог и сразу вернулось управление
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620721
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivЭто как бы допустимо иногда, но не всем подходит.Если вам нужны последние микросекунды жизни приложения, то надо изучать посмертный дамп.
А протоколирование должно быть асинхронным - это, всё-таки, не транзакции базы данных.
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620812
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovMasterZivЭто как бы допустимо иногда, но не всем подходит.Если вам нужны последние микросекунды жизни приложения, то надо изучать посмертный дамп.
А протоколирование должно быть асинхронным - это, всё-таки, не транзакции базы данных.
Если теряется суть логгирования - отловить пердсмертный ход событий - оно нафиг не нужно.
Дамп и без него можно покопать.

Пусть будет асинхронным, но с маленьким буфером )
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620861
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оно, конечно, специфика разная, но вот никогда не приходилось переживать, что пропала пара сотен последних строк.
Вот "бегамойты лопатить" это да, случалось. И не раз.
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39620902
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivРолг ХупинМне вот не совсем понятно, почему некоторые критикуют асинхронный режим логгирования

Ответ очевиден, если подумать.
Если ты логируешь асинхронно, данные для логирования должны где-то сохраняться временно, до момента записи в логи.
Если это так, то запись в лог попросту не гарантирована. А это тогда значит, что логи включаются в такой режим,
когда всё логирование может иногда быть выключенным. А тогда зачем вообще логи?

Это как бы допустимо иногда, но не всем подходит.

Кроме этого, это место, где все данные сохраняются, можно назвать его контекст логирования, должно быть защищено от гонок в многопоточном окружении, должно иметь достаточно большой буфер для хранения временных данных для логов.

и с другой стороны - чем тогда специфический фреймворк отличается от простой самопальной функции
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
void mylog(const char *fmt,...)
{
	FILE *f=NULL;
        if(f)
	{
		va_start(args, fmt);		
		vfprintf(f, fmt, args); 
		va_end(args);
		fclose(f);
	}
	return;
}



Но такая функция заваливает производительность при интенсивном логгировании, с чего я и начал изыскания
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39621096
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Copy the source folder to your build tree and use a C++11 compiler."


Что это "с++ 11" под виндоуз и под маком?
...
Рейтинг: 0 / 0
Log библиотека - порекомендуйте
    #39621123
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин"Copy the source folder to your build tree and use a C++11 compiler."


Что это "с++ 11" под виндоуз и под маком?
Требуется компилятор поддерживающий стандарт С++11. Сегодня все современные компиляторы его поддерживают.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Log библиотека - порекомендуйте
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]