mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-12 13:30:15 -05:00
Improve logging
This commit is contained in:
parent
0398f997d7
commit
e92e1acec4
4 changed files with 44 additions and 23 deletions
|
|
@ -21,7 +21,9 @@
|
|||
|
||||
#include <pinos/client/log.h>
|
||||
|
||||
SpaLogLevel pinos_log_level = SPA_LOG_LEVEL_DEBUG;
|
||||
#define DEFAULT_LOG_LEVEL SPA_LOG_LEVEL_ERROR
|
||||
|
||||
SpaLogLevel pinos_log_level = DEFAULT_LOG_LEVEL;
|
||||
|
||||
static void
|
||||
do_logv (SpaLog *log,
|
||||
|
|
@ -67,7 +69,7 @@ do_log (SpaLog *log,
|
|||
static SpaLog log = {
|
||||
sizeof (SpaLog),
|
||||
NULL,
|
||||
SPA_LOG_LEVEL_DEBUG,
|
||||
DEFAULT_LOG_LEVEL,
|
||||
do_log,
|
||||
do_logv,
|
||||
};
|
||||
|
|
@ -78,6 +80,12 @@ pinos_log_get (void)
|
|||
return &log;
|
||||
}
|
||||
|
||||
void
|
||||
pinos_log_set_level (SpaLogLevel level)
|
||||
{
|
||||
pinos_log_level = level;
|
||||
log.level = level;
|
||||
}
|
||||
|
||||
void
|
||||
pinos_log_log (SpaLogLevel level,
|
||||
|
|
@ -86,7 +94,7 @@ pinos_log_log (SpaLogLevel level,
|
|||
const char *func,
|
||||
const char *fmt, ...)
|
||||
{
|
||||
if (log.level >= level) {
|
||||
if (SPA_UNLIKELY (pinos_log_level_enabled (level))) {
|
||||
va_list args;
|
||||
va_start (args, fmt);
|
||||
do_logv (&log, level, file, line, func, fmt, args);
|
||||
|
|
@ -102,7 +110,7 @@ pinos_log_logv (SpaLogLevel level,
|
|||
const char *fmt,
|
||||
va_list args)
|
||||
{
|
||||
if (log.level >= level) {
|
||||
if (SPA_UNLIKELY (pinos_log_level_enabled (level))) {
|
||||
do_logv (&log, level, file, line, func, fmt, args);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ extern SpaLogLevel pinos_log_level;
|
|||
|
||||
SpaLog * pinos_log_get (void);
|
||||
|
||||
void pinos_log_set_level (SpaLogLevel level);
|
||||
|
||||
void pinos_log_log (SpaLogLevel level,
|
||||
const char *file,
|
||||
|
|
@ -43,10 +44,12 @@ void pinos_log_logv (SpaLogLevel level,
|
|||
const char *fmt,
|
||||
va_list args) SPA_PRINTF_FUNC(5, 0);
|
||||
|
||||
#define pinos_log_level_enabled(lev) (pinos_log_level >= (lev))
|
||||
|
||||
#if __STDC_VERSION__ >= 199901L
|
||||
|
||||
#define pinos_log_logc(lev,...) \
|
||||
if (SPA_UNLIKELY (lev <= pinos_log_level)) \
|
||||
if (SPA_UNLIKELY (pinos_log_level_enabled (lev))) \
|
||||
pinos_log_log(lev,__VA_ARGS__)
|
||||
|
||||
#define pinos_log_error(...) pinos_log_logc(SPA_LOG_LEVEL_ERROR,__FILE__,__LINE__,__func__,__VA_ARGS__)
|
||||
|
|
@ -60,7 +63,7 @@ void pinos_log_logv (SpaLogLevel level,
|
|||
#define PINOS_LOG_FUNC(name,lev) \
|
||||
static inline void pinos_log_##name (const char *format, ...) \
|
||||
{ \
|
||||
if (lev >= pinos_log_level) { \
|
||||
if (SPA_UNLIKELY (pinos_log_level_enabled (lev))) \
|
||||
va_list varargs; \
|
||||
va_start (varargs, format); \
|
||||
pinos_log_logv (lev,__FILE__,__LINE__,__func__,format,varargs); \
|
||||
|
|
|
|||
|
|
@ -35,6 +35,10 @@
|
|||
void
|
||||
pinos_init (int *argc, char **argv[])
|
||||
{
|
||||
const char *str;
|
||||
|
||||
if ((str = getenv ("PINOS_DEBUG")))
|
||||
pinos_log_set_level (atoi (str));
|
||||
}
|
||||
|
||||
const char *
|
||||
|
|
|
|||
|
|
@ -102,6 +102,7 @@ again:
|
|||
}
|
||||
}
|
||||
pinos_log_debug ("Try filter: %p", filter);
|
||||
if (pinos_log_level_enabled (SPA_LOG_LEVEL_DEBUG))
|
||||
spa_debug_format (filter);
|
||||
|
||||
if ((res = spa_node_port_enum_formats (this->output->node->node,
|
||||
|
|
@ -118,7 +119,9 @@ again:
|
|||
goto error;
|
||||
}
|
||||
pinos_log_debug ("Got filtered:");
|
||||
if (pinos_log_level_enabled (SPA_LOG_LEVEL_DEBUG))
|
||||
spa_debug_format (format);
|
||||
|
||||
spa_format_fixate (format);
|
||||
} else if (in_state == SPA_NODE_STATE_CONFIGURE && out_state > SPA_NODE_STATE_CONFIGURE) {
|
||||
/* only input needs format */
|
||||
|
|
@ -142,6 +145,7 @@ again:
|
|||
return SPA_RESULT_OK;
|
||||
|
||||
pinos_log_debug ("link %p: doing set format", this);
|
||||
if (pinos_log_level_enabled (SPA_LOG_LEVEL_DEBUG))
|
||||
spa_debug_format (format);
|
||||
|
||||
if (out_state == SPA_NODE_STATE_CONFIGURE) {
|
||||
|
|
@ -371,8 +375,10 @@ do_allocation (PinosLink *this, SpaNodeState in_state, SpaNodeState out_state)
|
|||
asprintf (&error, "error get input port info: %d", res);
|
||||
goto error;
|
||||
}
|
||||
if (pinos_log_level_enabled (SPA_LOG_LEVEL_DEBUG)) {
|
||||
spa_debug_port_info (oinfo);
|
||||
spa_debug_port_info (iinfo);
|
||||
}
|
||||
|
||||
in_flags = iinfo->flags;
|
||||
out_flags = oinfo->flags;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue