From: Luca Boccassi Date: Mon, 22 May 2023 15:25:50 +0000 (+0100) Subject: man: use setlogmask in LogControl1 example X-Git-Tag: v254-rc1~420 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fa63798a2e3f5ef568b6f191f6660cdd3b0be8fe;p=thirdparty%2Fsystemd.git man: use setlogmask in LogControl1 example Useful to show programs using syslog() how to easily set a mask. --- diff --git a/man/logcontrol-example.c b/man/logcontrol-example.c index 734318da932..c199ec7a0f2 100644 --- a/man/logcontrol-example.c +++ b/man/logcontrol-example.c @@ -130,6 +130,7 @@ static int property_set( for (int i = 0; i < LOG_DEBUG + 1; i++) if (strcmp(value, log_level_table[i]) == 0) { o->log_level = i; + setlogmask(LOG_UPTO(i)); return 0; } @@ -193,6 +194,12 @@ int main(int argc, char **argv) { .syslog_identifier = "example", }; + /* https://man7.org/linux/man-pages/man3/setlogmask.3.html + * Programs using syslog() instead of sd_journal can use this API to cut logs + * emission at the source. + */ + setlogmask(LOG_UPTO(o.log_level)); + /* Acquire a connection to the bus, letting the library work out the details. * https://www.freedesktop.org/software/systemd/man/sd_bus_default.html */