2013-05-08 2 views
3

Я хочу использовать google-glog (logging library) в моем проекте C++ \ Linux. И одна из самых важных функций для меня - это перекатывание файлов. I.e. когда размер файла журнала становится больше, чем фиксированный порог, создается новый файл журнала, а старый был удален. То же самое для ограничения по времени (ежедневно, ежечасно и т. Д.).Google glog roll files

Возможно, я что-то пропустил, но я не могу найти такую ​​функциональность в этой очень хорошей библиотеке. Может ли кто-нибудь помочь мне с этой проблемой?

+0

Документация направляет вас искать в logging.cc – quamrana

ответ

4

Для получения размера файла журнала (целое число):

GLOG_max_log_size (переменная среды) ИЛИ --max_log_size=size (если установлен GFLAGS) ИЛИ fLI::FLAGS_max_log_size=size (в C++ код)

Для LogDir (Строки):

GLOG_log_dir (Переменная среды) ИЛИ --log_dir=dir (если установлены gflags) ИЛИ fLS::FLAGS_log_dir=logdir (в коде C++)

Для входа в stderr (B oolean):

GLOG_logtostderr (Environmental переменная) ИЛИ --logtostderr=1 (если установлен GFLAGS) ИЛИ fLB::logtostderr=true (в C++ кода)

Аналогично вы можете использовать также следующие:

  • alsologtostderr, colorlogtostderr, log_prefix, stop_logging_if_full_disk из пространства имен fLB (все булевы)
  • minloglevel, logbuflevel, logbufsecs, logemaillevel из пространства имен fLI (все Целые)
  • alsologtoemail, logmailer, log_link, log_backtrace_at из пространства имен fLS (все строки)

Но прежде всего сделать, посмотрите на к glog_srource/SRC/logging.cc для получения дополнительной информации, как quamrana сказал.

Смежные вопросы