Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
daemon: Add a logging function for libblockdev
Browse files Browse the repository at this point in the history
So we can redirect important messages from libblockdev to our log.
vojtechtrefny committed Oct 22, 2024
1 parent 2610baa commit 2af6e12
Showing 1 changed file with 37 additions and 1 deletion.
38 changes: 37 additions & 1 deletion src/udisksdaemon.c
Original file line number Diff line number Diff line change
@@ -310,6 +310,36 @@ check_modules_state_in_idle_cb (gpointer user_data)
return G_SOURCE_REMOVE;
}

static void
bd_log_redirect (gint level, const gchar *msg)
{
switch (level)
{
case BD_UTILS_LOG_EMERG:
case BD_UTILS_LOG_ALERT:
case BD_UTILS_LOG_CRIT:
udisks_critical ("[blockdev] %s", msg);
break;
case BD_UTILS_LOG_ERR:
udisks_error ("[blockdev] %s", msg);
break;
case BD_UTILS_LOG_WARNING:
udisks_warning ("[blockdev] %s", msg);
break;
case BD_UTILS_LOG_NOTICE:
udisks_notice ("[blockdev] %s", msg);
break;
case BD_UTILS_LOG_INFO:
udisks_info ("[blockdev] %s", msg);
break;
case BD_UTILS_LOG_DEBUG:
udisks_debug ("[blockdev] %s", msg);
break;
default:
break;
}
}

static void
udisks_daemon_constructed (GObject *object)
{
@@ -342,7 +372,7 @@ udisks_daemon_constructed (GObject *object)
BDPluginSpec **plugin_p = NULL;
error = NULL;

ret = bd_try_init (plugins, NULL, NULL, &error);
ret = bd_try_init (plugins, bd_log_redirect, NULL, &error);
if (!ret)
{
if (error)
@@ -360,6 +390,12 @@ udisks_daemon_constructed (GObject *object)
}
}

#ifdef DEBUG
bd_utils_set_log_level(BD_UTILS_LOG_DEBUG);
#else
bd_utils_set_log_level(BD_UTILS_LOG_INFO);
#endif

/* Generate global UUID */
uuid_generate (uuid);
uuid_unparse (uuid, &uuid_buf[0]);

0 comments on commit 2af6e12

Please sign in to comment.