@@ -39,6 +39,31 @@ static struct monitor {
bool human;
} monitor;
+static void log_standard(struct log_ctx *ctx, int priority, const char *file,
+ int line, const char *fn, const char *format, va_list args)
+{
+ if (priority == 6)
+ vfprintf(stdout, format, args);
+ else
+ vfprintf(stderr, format, args);
+}
+
+static void log_file(struct log_ctx *ctx, int priority, const char *file,
+ int line, const char *fn, const char *format, va_list args)
+{
+ FILE *f = monitor.log_file;
+
+ if (priority != LOG_NOTICE) {
+ struct timespec ts;
+
+ clock_gettime(CLOCK_REALTIME, &ts);
+ fprintf(f, "[%10ld.%09ld] [%d] ", ts.tv_sec, ts.tv_nsec, getpid());
+ }
+
+ vfprintf(f, format, args);
+ fflush(f);
+}
+
static int monitor_event(struct cxl_ctx *ctx)
{
int fd, epollfd, rc = 0, timeout = -1;
Duplicate log functions from ndctl/monitor to use for stdout and file logging. Signed-off-by: Dave Jiang <dave.jiang@gmail.com> --- cxl/monitor.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+)