// Copyright (C) 2011-2015 Internet Systems Consortium, Inc. ("ISC") // // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/. #ifndef LOG_DBGLVLS_H #define LOG_DBGLVLS_H /// \file /// /// When a message is logged with DEBUG severity, the debug level associated /// with the message is also specified. This debug level is a number /// ranging from 0 to 99; the idea is that the higher the debug level, the /// more detailed the message. /// /// If debug messages are being logged, the logging system allows them to be /// filtered by debug level - only messages logged with a level equal to or /// less than the set debug level will be output. (For example, if the /// filter is set to 30, only debug messages logged with levels in the range /// 0 to 30 will be output; messages logged with levels 31 to 99 will be /// suppressed.) /// /// Levels of 30 or below are reserved for debug messages that are most /// likely to be useful for an administrator. Levels 31 to 99 are for use by /// someone familiar with the code. "Useful for an administrator" is, /// admittedly, a subjective term: it is loosely defined as messages helping /// someone diagnose a problem that they could solve without needing to dive /// into the code. So it covers things like start-up steps and configuration /// messages. /// /// In practice, this means that levels of 30 and below are most-likely to /// be used by the top-level programs, and 31 and above by the various /// libraries. /// /// This file defines a set of standard debug levels for use across all loggers. /// In this way users can have some expectation of what will be output when /// enabling debugging. Symbols are prefixed DBGLVL so as not to clash with /// DBG_ symbols in the various modules. namespace { /// Process startup/shutdown debug messages. Note that these are _debug_ /// messages, as other messages related to startup and shutdown may be output /// with another severity. For example, when the authoritative server starts /// up, the "server started" message could be output at a severity of INFO. /// "Server starting" and messages indicating the stages in startup should be /// debug messages output at this severity. /// /// This is given a value of 0 as that is the level selected if debugging is /// enabled without giving a level. const int DBGLVL_START_SHUT = 0; /// This debug level is reserved for logging the exchange of messages/commands /// between processes, including configuration messages. const int DBGLVL_COMMAND = 10; /// If the commands have associated data, this level is when they are printed. /// This includes configuration messages. const int DBGLVL_COMMAND_DATA = 20; // The following constants are suggested values for common operations. // Depending on the exact nature of the code, modules may or may not use these // levels. /// Trace basic operations. const int DBGLVL_TRACE_BASIC = 40; /// Trace data associated with the basic operations. const int DBGLVL_TRACE_BASIC_DATA = 45; /// Trace detailed operations. const int DBGLVL_TRACE_DETAIL = 50; /// Trace data associated with detailed operations. const int DBGLVL_TRACE_DETAIL_DATA = 55; } // Anonymous namespace #endif // LOG_DBGLVLS_H