Typedef MLOG_LEVEL_t#
Defined in File mlog.h
Typedef Documentation#
-
typedef enum MLOG_LEVEL MLOG_LEVEL_t#
Mandatory logging are those critial msgs of the runtime including three levels of severity: MLOG_LEVEL_WARN: warning of likely problem, but the results might be ok MLOG_LEVEL_ERROR: error of runtime execution, program can continue, results will be wrong, but still useful MLOG_LEVEL_FATAL: fatal errors of runtime, program cannot continue.
Optional logging are those msgs that provide information of program execution. It is controlled by the mlogLevel varible that control which level of information will be spit out. The levels of details incrementally include: MLOG_LEVEL_KEY MLOG_LEVEL_INFO MLOG_LEVEL_MARCH MLOG_LEVEL_TRACE The default mlogLevel is MLOG_LEVEL_NONE, i.e. no information of these four levels will spit out.
MLOG_LEVEL_DEBUG is a mlogging level that can be controlled by users, it should be used for debugging purpose only.
There are two sets of APIs to use, C-style (printf) and C++-style (<<), and these APIs are are simply macros that are used as functions. API names carry the level information, and each mlogging API call should also be proivde a subject to indicate the compoenents or module of this mlogging. MLogging msgs include logging level, subject, file:line, function name, and user-specified msgs. User msgs are either C-style printf format or C++-style << format depending on which style to use. C-style APIs and C++-style APIs have _C and _CXX suffix respectively.
The mlog.h/C also include the implementation for ASSERT_*, ROSE_ASSERT, ROSE_ABORT that are used througout the source tree.