From b7dde4fca29d5cc81835bdc1e688b1d929231c2d Mon Sep 17 00:00:00 2001 From: bixiaoyan Date: Wed, 21 Feb 2024 17:24:21 +0800 Subject: [PATCH] Make some logs less noisy --- Make-some-logs-less-noisy-495.patch | 133 ++++++++++++++++++++++++++++ libqb.spec | 8 +- 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 Make-some-logs-less-noisy-495.patch diff --git a/Make-some-logs-less-noisy-495.patch b/Make-some-logs-less-noisy-495.patch new file mode 100644 index 0000000..5ca2ace --- /dev/null +++ b/Make-some-logs-less-noisy-495.patch @@ -0,0 +1,133 @@ +From 1070cbc17cbfb415f0bd695f58cdaa4d60c8596c Mon Sep 17 00:00:00 2001 +From: Ken Gaillot +Date: Wed, 31 Jan 2024 03:44:16 -0600 +Subject: [PATCH] Make some logs less noisy (#495) + +* log: lower IPC connection issues to info level + +... in handle_new_connection(). The caller has better context for whether a +problem merits a warning or error, and the function's return code is +sufficiently descriptive to do so. Some problems may be expected or able to be +worked around. + +For example, Pacemaker's crm_mon attempts to contact pacemakerd IPC. On a +Pacemaker Remote node, that IPC will be unavailable, and crm_mon can check the +libqb return code to detect and handle that situation gracefully. + +* log: lower some ringbuffer debug messages to trace level + +They're rather noisy, with every shm-based IPC connection generating multiple +obscure messages like: + + debug: shm size:1048589; real_size:1052672; rb->word_size:263168 + +and every disconnect generating the rather unhelpful: + + debug: qb_ipcc_disconnect() + +along with multiple messages like: + + debug: Closing ringbuffer: /dev/shm/qb-10986-11014-34-26VRvs/qb-request-cmap-header + +All of these seem appropriate to trace level. +--- + lib/ipc_setup.c | 11 +++++------ + lib/ipcc.c | 4 ++-- + lib/ringbuffer.c | 4 ++-- + lib/ringbuffer_helper.c | 4 ++-- + 4 files changed, 11 insertions(+), 12 deletions(-) + +diff --git a/lib/ipc_setup.c b/lib/ipc_setup.c +index 0de7115..73b4e37 100644 +--- a/lib/ipc_setup.c ++++ b/lib/ipc_setup.c +@@ -1,5 +1,5 @@ + /* +- * Copyright (C) 2010,2013 Red Hat, Inc. ++ * Copyright 2010-2024 Red Hat, Inc. + * + * Author: Angus Salkeld + * +@@ -765,16 +765,15 @@ send_response: + qb_ipcs_connection_unref(c); + } else { + if (res == -EACCES) { +- qb_util_log(LOG_ERR, "Invalid IPC credentials (%s).", ++ qb_util_log(LOG_INFO, "IPC connection credentials rejected (%s)", + c->description); + } else if (res == -EAGAIN) { +- qb_util_log(LOG_WARNING, "Denied connection, is not ready (%s)", ++ qb_util_log(LOG_INFO, "IPC connection not ready (%s)", + c->description); + } else { +- errno = -res; +- qb_util_perror(LOG_ERR, +- "Error in connection setup (%s)", ++ qb_util_perror(LOG_INFO, "IPC connection setup failed (%s)", + c->description); ++ errno = -res; + } + + if (c->state == QB_IPCS_CONNECTION_INACTIVE) { +diff --git a/lib/ipcc.c b/lib/ipcc.c +index 4f35ea2..4471f1f 100644 +--- a/lib/ipcc.c ++++ b/lib/ipcc.c +@@ -1,5 +1,5 @@ + /* +- * Copyright (C) 2010 Red Hat, Inc. ++ * Copyright 2010-2024 Red Hat, Inc. + * + * Author: Angus Salkeld + * +@@ -480,7 +480,7 @@ qb_ipcc_disconnect(struct qb_ipcc_connection *c) + { + struct qb_ipc_one_way *ow = NULL; + +- qb_util_log(LOG_DEBUG, "%s()", __func__); ++ qb_util_log(LOG_TRACE, "%s(%s)", __func__, (c == NULL)? "NULL" : ""); + + if (c == NULL) { + return; +diff --git a/lib/ringbuffer.c b/lib/ringbuffer.c +index b769edf..96a05f1 100644 +--- a/lib/ringbuffer.c ++++ b/lib/ringbuffer.c +@@ -1,5 +1,5 @@ + /* +- * Copyright (C) 2010-2011 Red Hat, Inc. ++ * Copyright 2010-2024 Red Hat, Inc. + * + * Author: Angus Salkeld + * +@@ -233,7 +233,7 @@ qb_rb_open_2(const char *name, size_t size, uint32_t flags, + goto cleanup_hdr; + } + +- qb_util_log(LOG_DEBUG, ++ qb_util_log(LOG_TRACE, + "shm size:%ld; real_size:%ld; rb->word_size:%d", size, + real_size, rb->shared_hdr->word_size); + +diff --git a/lib/ringbuffer_helper.c b/lib/ringbuffer_helper.c +index 11795ff..e47b7d5 100644 +--- a/lib/ringbuffer_helper.c ++++ b/lib/ringbuffer_helper.c +@@ -334,12 +334,12 @@ qb_rb_close_helper(struct qb_ringbuffer_s * rb, int32_t unlink_it, + char *hdr_path = rb->shared_hdr->hdr_path; + + if (unlink_it) { +- qb_util_log(LOG_DEBUG, "Free'ing ringbuffer: %s", hdr_path); ++ qb_util_log(LOG_TRACE, "Free'ing ringbuffer: %s", hdr_path); + if (rb->notifier.destroy_fn) { + (void)rb->notifier.destroy_fn(rb->notifier.instance); + } + } else { +- qb_util_log(LOG_DEBUG, "Closing ringbuffer: %s", hdr_path); ++ qb_util_log(LOG_TRACE, "Closing ringbuffer: %s", hdr_path); + hdr_path = NULL; + } + +-- +2.25.1 + diff --git a/libqb.spec b/libqb.spec index f8efb64..bb0a92a 100644 --- a/libqb.spec +++ b/libqb.spec @@ -1,11 +1,12 @@ Name: libqb Version: 2.0.8 -Release: 2 +Release: 3 Summary: Library providing high performance logging, tracing, ipc, and poll License: LGPLv2+ URL: https://github.com/ClusterLabs/libqb Source0: https://github.com/ClusterLabs/libqb/releases/download/v%{version}/%{name}-%{version}.tar.xz Patch0: Change-assert-in-ringbuffer-to-a-return-code-492.patch +Patch1: Make-some-logs-less-noisy-495.patch BuildRequires: autoconf automake libtool check-devel doxygen gcc procps pkgconfig(glib-2.0) BuildRequires: git-core # For doxygen2man @@ -74,6 +75,11 @@ This package contains a program to create nicely-formatted man pages from Doxyge %{_mandir}/man1/doxygen2man.1.gz %changelog +* Wed Feb 21 2024 bixiaoyan - 2.0.8-3 +- Make some logs less noisy + Community Patch Link: + https://github.com/ClusterLabs/libqb/pull/495 + * Mon Nov 20 2023 bixiaoyan - 2.0.8-2 - Change assert in ringbuffer to a return code Community Patch Link: -- Gitee