]> git.ipfire.org Git - thirdparty/kea.git/commit
[#665,!460] Initial implementation, kea-dhcp4 only
authorThomas Markwalder <tmark@isc.org>
Mon, 5 Aug 2019 14:25:15 +0000 (10:25 -0400)
committerTomek Mrugalski <tomasz@isc.org>
Wed, 14 Aug 2019 08:57:56 +0000 (10:57 +0200)
commit784d55996c2fc7dab410e298a4782d98ff98e597
treecf1b5d30a8c410061d68c622fbd9be811aae0a58
parent1ec3aca6ea5606dd8d63528f457a4234667bf953
[#665,!460] Initial implementation, kea-dhcp4 only

Added an optional "pattern" parameter to logger output options. It supports
any combination of content described here:

https://log4cplus.sourceforge.io/docs/html/classlog4cplus_1_1PatternLayout.html

src/lib/log/output_option.*
    Added constants to define default patterns:
        OutputOption::DEFAULT_CONSOLE_PATTERN = "%D{%Y-%m-%d %H:%M:%S.%q} %-5p [%c/%i] %m\n";
        OutputOption::DEFAULT_FILE_PATTERN = "%D{%Y-%m-%d %H:%M:%S.%q} %-5p [%c/%i] %m\n";
        OutputOption::DEFAULT_SYSLOG_PATTERN = "%-5p [%c] %m\n";

    OutputOption::pattern_ - new member for conveying pattern string

src/lib/log/logger_manager_impl.*
    LoggerManagerImpl::createConsoleAppender()
    LoggerManagerImpl::createFileAppender()
    LoggerManagerImpl::createSyslogAppender() uses either
    paramater, option.pattern, or the appropriate default pattern

    LoggerManagerImpl::setAppenderLayout() - new, common method to
    set the layout, accepts a pattern string parameter

    LoggerManagerImpl::setConsoleAppenderLayout()
    LoggerManagerImpl::setSyslogAppenderLayout() - deleted

src/lib/process/log_parser.cc
    LogConfigParser::parseOutputOptions() - now supports pattern

src/lib/process/logging_info.*
    LoggingDestination::pattern_  - new member for conveying pattern string

src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.yy
    Added "pattern" to the parser grammar
16 files changed:
src/bin/dhcp4/dhcp4_lexer.cc
src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.cc
src/bin/dhcp4/dhcp4_parser.h
src/bin/dhcp4/dhcp4_parser.yy
src/bin/dhcp4/location.hh
src/bin/dhcp4/position.hh
src/bin/dhcp4/stack.hh
src/lib/log/logger_manager_impl.cc
src/lib/log/logger_manager_impl.h
src/lib/log/output_option.cc
src/lib/log/output_option.h
src/lib/process/log_parser.cc
src/lib/process/logging_info.cc
src/lib/process/logging_info.h
src/lib/process/tests/logging_info_unittests.cc