12 #ifndef ZYPP_BASE_LOGGER_H
13 #define ZYPP_BASE_LOGGER_H
31 TraceLeave(
const char * file_r,
const char * fnc_r,
int line_r );
39 #define TRACE ::zypp::debug::TraceLeave _TraceLeave( __FILE__, __FUNCTION__, __LINE__ )
49 { _str << std::forward<Tp>(val);
return *
this; }
51 Osd &
operator<<( std::ostream& (*iomanip)( std::ostream& ) );
56 #define OSD ::zypp::debug::Osd()
84 #ifndef ZYPP_BASE_LOGGER_LOGGROUP
86 #define ZYPP_BASE_LOGGER_LOGGROUP "DEFINE_LOGGROUP"
89 #define XXX L_XXX( ZYPP_BASE_LOGGER_LOGGROUP )
90 #define DBG L_DBG( ZYPP_BASE_LOGGER_LOGGROUP )
91 #define MIL L_MIL( ZYPP_BASE_LOGGER_LOGGROUP )
92 #define WAR L_WAR( ZYPP_BASE_LOGGER_LOGGROUP )
93 #define ERR L_ERR( ZYPP_BASE_LOGGER_LOGGROUP )
94 #define SEC L_SEC( ZYPP_BASE_LOGGER_LOGGROUP )
95 #define INT L_INT( ZYPP_BASE_LOGGER_LOGGROUP )
96 #define USR L_USR( ZYPP_BASE_LOGGER_LOGGROUP )
98 #define L_XXX(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_XXX )
99 #define L_DBG(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP"++", zypp::base::logger::E_MIL )
100 #define L_MIL(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_MIL )
101 #define L_WAR(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_WAR )
102 #define L_ERR(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_ERR )
103 #define L_SEC(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_SEC )
104 #define L_INT(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_INT )
105 #define L_USR(GROUP) ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_USR )
107 #define L_BASEFILE ( *__FILE__ == '/' ? strrchr( __FILE__, '/' ) + 1 : __FILE__ )
110 #define ZYPP_BASE_LOGGER_LOG(GROUP,LEVEL) \
111 zypp::base::logger::getStream( GROUP, LEVEL, L_BASEFILE, __FUNCTION__, __LINE__ )
151 extern std::ostream &
getStream(
const char * group_r,
LogLevel
Definition of log levels.
@ E_SEC
Secutrity related.
@ E_XXX
Excessive logging.
std::ostream & getStream(const char *group_r, LogLevel level_r, const char *file_r, const char *func_r, const int line_r)
Return a log stream to write on.
Easy-to use interface to the ZYPP dependency resolver.
Osd & operator<<(Tp &&val)
TraceLeave(const TraceLeave &)=delete
TraceLeave & operator=(const TraceLeave &)=delete