Я использую журнал буста в своем приложении для регистрации.
Тем не менее, в некоторых разделах моего кода у меня есть несколько операторов журнала, которые могут появляться очень часто, если что-то идет не так. Мне нужен какой-то охранник, который может ограничивать сообщения журнала, когда он обнаруживает, что одно и то же сообщение журнала появляется постоянно.
например. (Это упрощенный пример, а не фактическая реализация)
while(!framebuffer.try_pop(frame))
{
BOOST_LOG(trace) << "Buffer underrun.";
}
Если по какой-то причине «framebuffer» не принимает фреймы в течение длительного времени, запись в журнал отправит много журнальных сообщений.
Однако я не уверен, какую стратегию использовать для ограничения сообщений журнала, не теряя важных сообщений, и как ее реализовать.