libzypp 17.35.19
Logger.h File Reference
#include <cstring>
#include <iosfwd>
#include <string>
#include <zypp/Globals.h>
Include dependency graph for Logger.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  zypp::debug::TraceLeave
 
struct  zypp::debug::Osd
 

Namespaces

namespace  zypp
 Easy-to use interface to the ZYPP dependency resolver.
 
namespace  zypp::debug
 
namespace  zypp::base
 
namespace  zypp::base::logger
 

Macros

#define TRACE(M)   ::zypp::debug::TraceLeave _TraceLeave( __FILE__, __FUNCTION__, __LINE__, M );
 
#define XTRACE   ::zypp::debug::TraceLeave _TraceLeave( __FILE__, __FUNCTION__, __LINE__ );
 
#define OSD   ::zypp::debug::Osd(L_USR("OSD"))
 
#define ZYPP_BASE_LOGGER_LOGGROUP   "DEFINE_LOGGROUP"
 Default log group if undefined.
 
#define XXX   L_XXX( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define DBG   L_DBG( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define MIL   L_MIL( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define WAR   L_WAR( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define ERR   L_ERR( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define SEC   L_SEC( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define INT   L_INT( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define USR   L_USR( ZYPP_BASE_LOGGER_LOGGROUP )
 
#define L_XXX(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_XXX )
 
#define L_DBG(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP"++", zypp::base::logger::E_MIL )
 
#define L_MIL(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_MIL )
 
#define L_WAR(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_WAR )
 
#define L_ERR(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_ERR )
 
#define L_SEC(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_SEC )
 
#define L_INT(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_INT )
 
#define L_USR(GROUP)   ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_USR )
 
#define L_ENV_CONSTR_DEFINE_FUNC(ENV)
 
#define L_ENV_CONSTR_FWD_DECLARE_FUNC(ENV)   namespace zypp::log { bool has_env_constr_##ENV (); const char *empty_or_group_if_##ENV ( const char *group ); }
 
#define L_ENV_CONSTR(ENV, GROUP, LEVEL)   ZYPP_BASE_LOGGER_LOG( zypp::log::empty_or_group_if_##ENV( GROUP ), LEVEL )
 
#define L_BASEFILE   ( *__FILE__ == '/' ? strrchr( __FILE__, '/' ) + 1 : __FILE__ )
 
#define ZYPP_BASE_LOGGER_LOG(GROUP, LEVEL)    zypp::base::logger::getStream( GROUP, LEVEL, L_BASEFILE, __FUNCTION__, __LINE__ )
 Actual call to getStream.
 

Enumerations

enum  zypp::base::logger::LogLevel {
  zypp::base::logger::E_XXX = 999 , zypp::base::logger::E_DBG = 0 , zypp::base::logger::E_MIL , zypp::base::logger::E_WAR ,
  zypp::base::logger::E_ERR , zypp::base::logger::E_SEC , zypp::base::logger::E_INT , zypp::base::logger::E_USR
}
 Definition of log levels. More...
 

Functions

std::ostream & zypp::base::logger::getStream (const char *group_r, LogLevel level_r, const char *file_r, const char *func_r, const int line_r) ZYPP_API
 Return a log stream to write on.
 
bool zypp::base::logger::isExcessive ()
 

Macro Definition Documentation

◆ TRACE

#define TRACE ( M)    ::zypp::debug::TraceLeave _TraceLeave( __FILE__, __FUNCTION__, __LINE__, M );

Definition at line 42 of file Logger.h.

◆ XTRACE

#define XTRACE   ::zypp::debug::TraceLeave _TraceLeave( __FILE__, __FUNCTION__, __LINE__ );

Definition at line 43 of file Logger.h.

◆ OSD

#define OSD   ::zypp::debug::Osd(L_USR("OSD"))

Definition at line 65 of file Logger.h.

◆ ZYPP_BASE_LOGGER_LOGGROUP

#define ZYPP_BASE_LOGGER_LOGGROUP   "DEFINE_LOGGROUP"

Default log group if undefined.

Definition at line 95 of file Logger.h.

◆ XXX

#define XXX   L_XXX( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 98 of file Logger.h.

◆ DBG

#define DBG   L_DBG( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 99 of file Logger.h.

◆ MIL

#define MIL   L_MIL( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 100 of file Logger.h.

◆ WAR

#define WAR   L_WAR( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 101 of file Logger.h.

◆ ERR

#define ERR   L_ERR( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 102 of file Logger.h.

◆ SEC

#define SEC   L_SEC( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 103 of file Logger.h.

◆ INT

#define INT   L_INT( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 104 of file Logger.h.

◆ USR

#define USR   L_USR( ZYPP_BASE_LOGGER_LOGGROUP )

Definition at line 105 of file Logger.h.

◆ L_XXX

#define L_XXX ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_XXX )

Definition at line 107 of file Logger.h.

◆ L_DBG

#define L_DBG ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP"++", zypp::base::logger::E_MIL )

Definition at line 108 of file Logger.h.

◆ L_MIL

#define L_MIL ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_MIL )

Definition at line 109 of file Logger.h.

◆ L_WAR

#define L_WAR ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_WAR )

Definition at line 110 of file Logger.h.

◆ L_ERR

#define L_ERR ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_ERR )

Definition at line 111 of file Logger.h.

◆ L_SEC

#define L_SEC ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_SEC )

Definition at line 112 of file Logger.h.

◆ L_INT

#define L_INT ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_INT )

Definition at line 113 of file Logger.h.

◆ L_USR

#define L_USR ( GROUP)    ZYPP_BASE_LOGGER_LOG( GROUP, zypp::base::logger::E_USR )

Definition at line 114 of file Logger.h.

◆ L_ENV_CONSTR_DEFINE_FUNC

#define L_ENV_CONSTR_DEFINE_FUNC ( ENV)
Value:
namespace zypp::log { \
bool has_env_constr_##ENV () \
{ \
static bool has_##ENV = (::getenv(#ENV) != NULL); \
return has_##ENV; \
} \
const char *empty_or_group_if_##ENV ( const char *group ) \
{ \
return has_env_constr_##ENV() ? group : nullptr; \
} \
}

Definition at line 117 of file Logger.h.

◆ L_ENV_CONSTR_FWD_DECLARE_FUNC

#define L_ENV_CONSTR_FWD_DECLARE_FUNC ( ENV)    namespace zypp::log { bool has_env_constr_##ENV (); const char *empty_or_group_if_##ENV ( const char *group ); }

Definition at line 130 of file Logger.h.

◆ L_ENV_CONSTR

#define L_ENV_CONSTR ( ENV,
GROUP,
LEVEL )   ZYPP_BASE_LOGGER_LOG( zypp::log::empty_or_group_if_##ENV( GROUP ), LEVEL )

Definition at line 131 of file Logger.h.

◆ L_BASEFILE

#define L_BASEFILE   ( *__FILE__ == '/' ? strrchr( __FILE__, '/' ) + 1 : __FILE__ )

Definition at line 133 of file Logger.h.

◆ ZYPP_BASE_LOGGER_LOG

#define ZYPP_BASE_LOGGER_LOG ( GROUP,
LEVEL )    zypp::base::logger::getStream( GROUP, LEVEL, L_BASEFILE, __FUNCTION__, __LINE__ )

Actual call to getStream.

Definition at line 136 of file Logger.h.