Skip to content

Commit f09f592

Browse files
committed
Fix verbose/debug logging, add G_LOG_DOMAIN for easier tracking
in journalctl. Verbose mode was broken for gtk-based daemons, as post-gtk_init is too late to set G_MESSAGES_DEBUG.
1 parent a690627 commit f09f592

File tree

18 files changed

+45
-5
lines changed

18 files changed

+45
-5
lines changed

plugins/a11y-settings/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ executable(
1717
include_directories: [include_dirs, common_inc],
1818
dependencies: a11y_settings_deps,
1919
c_args: [
20+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2021
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2122
],
2223
install: true,

plugins/automount/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ executable(
1818
include_directories: [include_dirs, common_inc],
1919
dependencies: automount_deps,
2020
c_args: [
21+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2122
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2223
],
2324
install_rpath: join_paths(prefix, apilibdir),

plugins/background/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ executable(
1919
include_directories: [include_dirs, common_inc],
2020
dependencies: background_deps,
2121
c_args: [
22+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2223
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2324
],
2425
install: true,

plugins/clipboard/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ executable(
1919
include_directories: [include_dirs, common_inc],
2020
dependencies: clipboard_deps,
2121
c_args: [
22+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2223
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2324
],
2425
install: true,

plugins/color/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ executable(
3737
dependencies: color_deps,
3838
c_args: [
3939
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
40+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
4041
'-DBINDIR="@0@"'.format(bindir),
4142
],
4243
install: true,

plugins/common/daemon-skeleton-gtk.h

+14-1
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,19 @@ handle_signal (gpointer user_data)
174174
return G_SOURCE_REMOVE;
175175
}
176176

177+
static void
178+
message_handler (const gchar *log_domain,
179+
GLogLevelFlags log_level,
180+
const gchar *message,
181+
gpointer user_data)
182+
{
183+
/* Make this look like normal console output */
184+
if (log_level & G_LOG_LEVEL_DEBUG)
185+
printf ("csd-%s: %s\n", PLUGIN_NAME, message);
186+
else
187+
printf ("%s: %s\n", g_get_prgname (), message);
188+
}
189+
177190
int
178191
main (int argc, char **argv)
179192
{
@@ -221,7 +234,7 @@ main (int argc, char **argv)
221234
g_unix_signal_add (SIGTERM, (GSourceFunc) handle_signal, NULL);
222235

223236
if (verbose)
224-
g_setenv ("G_MESSAGES_DEBUG", "all", TRUE);
237+
g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, message_handler, NULL);
225238

226239
if (timeout > 0) {
227240
guint id;

plugins/common/daemon-skeleton.h

+15-4
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,19 @@ handle_signal (gpointer user_data)
171171
return G_SOURCE_REMOVE;
172172
}
173173

174+
static void
175+
message_handler (const gchar *log_domain,
176+
GLogLevelFlags log_level,
177+
const gchar *message,
178+
gpointer user_data)
179+
{
180+
/* Make this look like normal console output */
181+
if (log_level & G_LOG_LEVEL_DEBUG)
182+
printf ("csd-%s: %s\n", PLUGIN_NAME, message);
183+
else
184+
printf ("%s: %s\n", g_get_prgname (), message);
185+
}
186+
174187
int
175188
main (int argc, char **argv)
176189
{
@@ -208,10 +221,8 @@ main (int argc, char **argv)
208221

209222
g_unix_signal_add (SIGTERM, (GSourceFunc) handle_signal, loop);
210223

211-
if (verbose) {
212-
g_setenv ("G_MESSAGES_DEBUG", "all", TRUE);
213-
setlinebuf (stdout);
214-
}
224+
if (verbose)
225+
g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, message_handler, NULL);
215226

216227
if (timeout > 0) {
217228
guint id;

plugins/datetime/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ if polkit.found()
4747
include_directories: [include_dirs, common_inc],
4848
dependencies: datetime_deps,
4949
c_args: [
50+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
5051
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
5152
],
5253
install: true,

plugins/housekeeping/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ executable(
2525
include_directories: [include_dirs, common_inc],
2626
dependencies: housekeeping_deps,
2727
c_args: [
28+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2829
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2930
],
3031
install: true,

plugins/keyboard/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ executable(
2323
include_directories: [include_dirs, common_inc, include_enums],
2424
dependencies: keyboard_deps,
2525
c_args: [
26+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2627
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2728
'-DDATADIR="@0@"'.format(datadir),
2829
],

plugins/media-keys/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ executable(
2525
include_directories: [include_dirs, common_inc, include_enums],
2626
dependencies: media_keys_deps,
2727
c_args: [
28+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2829
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2930
],
3031
install: true,

plugins/power/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ executable(
6161
dependencies: power_deps,
6262
c_args: [
6363
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
64+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
6465
],
6566
install_rpath: join_paths(prefix, apilibdir),
6667
install: true,

plugins/print-notifications/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ executable(
2323
include_directories: [include_dirs, common_inc],
2424
dependencies: print_notifications_deps,
2525
c_args: [
26+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2627
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2728
],
2829
install: true,

plugins/screensaver-proxy/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ executable(
1717
include_directories: [include_dirs, common_inc],
1818
dependencies: screensaver_proxy_deps,
1919
c_args: [
20+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2021
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2122
],
2223
install: true,

plugins/settings-remap/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ executable(
1616
include_directories: [include_dirs, common_inc],
1717
dependencies: settings_remap_deps,
1818
c_args: [
19+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
1920
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2021
],
2122
install: true,

plugins/smartcard/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ executable(
1919
include_directories: [include_dirs, common_inc],
2020
dependencies: smartcard_deps,
2121
c_args: [
22+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2223
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2324
],
2425
install: true,

plugins/wacom/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ deps = [
1717
]
1818

1919
cflags = [
20+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
2021
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
2122
]
2223

plugins/xsettings/meson.build

+1
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ executable(
3232
include_directories: [include_dirs, common_inc, include_enums],
3333
dependencies: xsettings_deps,
3434
c_args: [
35+
'-DG_LOG_DOMAIN="csd-@0@"'.format(plugin_name),
3536
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
3637
'-DGTK_MODULES_DIRECTORY="@0@/@1@/cinnamon-settings-daemon-@2@/gtk-modules/"'.format(prefix, libdir, api_version),
3738
],

0 commit comments

Comments
 (0)