[monitoring-plugins] add extra output to pgsql check

waja git at monitoring-plugins.org
Wed May 10 14:10:11 CEST 2023


    Module: monitoring-plugins
    Branch: master
    Commit: 9f15dac8e789a4b13d4f9e8897ee03fee84f494a
    Author: phowen <phowen at cisco.com>
 Committer: waja <waja at users.noreply.github.com>
      Date: Wed Apr 26 13:40:27 2017 +0100
       URL: https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=9f15dac

add extra output to pgsql check

---

 plugins/check_pgsql.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/plugins/check_pgsql.c b/plugins/check_pgsql.c
index c26cd43..05fdc15 100644
--- a/plugins/check_pgsql.c
+++ b/plugins/check_pgsql.c
@@ -517,7 +517,10 @@ print_help (void)
 	printf (" %s\n", _("connecting to the server. The result from the query has to be numeric."));
 	printf (" %s\n", _("Multiple SQL commands, separated by semicolon, are allowed but the result "));
 	printf (" %s\n", _("of the last command is taken into account only. The value of the first"));
-	printf (" %s\n\n", _("column in the first row is used as the check result."));
+	printf (" %s\n", _("column in the first row is used as the check result. If a second column is"));
+	printf (" %s\n", _("present in the result set, this is added to the plugin output with a"));
+	printf (" %s\n", _("prefix of \"Extra Info:\". This information can be displayed in the system"));
+	printf (" %s\n\n", _("executing the plugin."));
 
 	printf (" %s\n", _("See the chapter \"Monitoring Database Activity\" of the PostgreSQL manual"));
 	printf (" %s\n\n", _("for details about how to access internal statistics of the database server."));
@@ -557,6 +560,7 @@ do_query (PGconn *conn, char *query)
 	PGresult *res;
 
 	char *val_str;
+	char *extra_info;
 	double value;
 
 	char *endptr = NULL;
@@ -621,6 +625,12 @@ do_query (PGconn *conn, char *query)
 	printf ("|query=%f;%s;%s;;\n", value,
 			query_warning ? query_warning : "",
 			query_critical ? query_critical : "");
+	if (PQnfields (res) > 1) {
+		extra_info = PQgetvalue (res, 0, 1);
+		if (extra_info != NULL) {
+			printf ("Extra Info: %s\n", extra_info);
+		}
+	}
 	return my_status;
 }
 



More information about the Commits mailing list