#include "printfrr.h"
#include "frrcu.h"
#include "zlog.h"
+#include "trace.h"
DEFINE_MTYPE_STATIC(LIB, LOG_MESSAGE, "log message")
DEFINE_MTYPE_STATIC(LIB, LOG_TLSBUF, "log thread-local buffer")
{
struct zlog_tls *zlog_tls = zlog_tls_get();
+#ifdef HAVE_LTTNG
+ va_list copy;
+ va_copy(copy, ap);
+ char *msg = vasprintfrr(MTYPE_LOG_MESSAGE, fmt, copy);
+
+ switch (prio) {
+ case LOG_ERR:
+ tracelog(TRACE_ERR, msg);
+ break;
+ case LOG_WARNING:
+ tracelog(TRACE_WARNING, msg);
+ break;
+ case LOG_DEBUG:
+ tracelog(TRACE_DEBUG, msg);
+ break;
+ case LOG_NOTICE:
+ tracelog(TRACE_DEBUG, msg);
+ break;
+ case LOG_INFO:
+ default:
+ tracelog(TRACE_INFO, msg);
+ break;
+ }
+
+ va_end(copy);
+ XFREE(MTYPE_LOG_MESSAGE, msg);
+#endif
+
if (zlog_tls)
vzlog_tls(zlog_tls, prio, fmt, ap);
else