소스 검색

qdevice: Configurable log priority bump

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Jan Friesse 6 년 전
부모
커밋
1e006d42b9
4개의 변경된 파일13개의 추가작업 그리고 6개의 파일을 삭제
  1. 1 0
      man/corosync-qdevice.8
  2. 8 3
      qdevices/corosync-qdevice.c
  3. 3 2
      qdevices/qdevice-log.c
  4. 1 1
      qdevices/qdevice-log.h

+ 1 - 0
man/corosync-qdevice.8

@@ -49,6 +49,7 @@ for 2 node clusters.
 .TP
 .B -d
 Forcefully turn on debug information without the need to change corosync.conf.
+For bumping syslog messages priority to info, use this parameter twice.
 .TP
 .B -f
 Do not daemonize, run in the foreground.

+ 8 - 3
qdevices/corosync-qdevice.c

@@ -143,17 +143,21 @@ cli_parse_long_opt(struct qdevice_advanced_settings *advanced_settings, const ch
 }
 
 static void
-cli_parse(int argc, char * const argv[], int *foreground, int *force_debug,
+cli_parse(int argc, char * const argv[], int *foreground, int *force_debug, int *bump_log_priority,
     struct qdevice_advanced_settings *advanced_settings)
 {
 	int ch;
 
 	*foreground = 0;
 	*force_debug = 0;
+	*bump_log_priority = 0;
 
 	while ((ch = getopt(argc, argv, "dfhS:")) != -1) {
 		switch (ch) {
 		case 'd':
+			if (*force_debug) {
+				*bump_log_priority = 1;
+			}
 			*force_debug = 1;
 			break;
 		case 'f':
@@ -178,6 +182,7 @@ main(int argc, char * const argv[])
 	struct qdevice_advanced_settings advanced_settings;
 	int foreground;
 	int force_debug;
+	int bump_log_priority;
 	int lock_file;
 	int another_instance_running;
 	int model_run_res;
@@ -186,7 +191,7 @@ main(int argc, char * const argv[])
 		errx(1, "Can't alloc memory for advanced settings");
 	}
 
-	cli_parse(argc, argv, &foreground, &force_debug, &advanced_settings);
+	cli_parse(argc, argv, &foreground, &force_debug, &bump_log_priority, &advanced_settings);
 
 	qdevice_instance_init(&instance, &advanced_settings);
 
@@ -194,7 +199,7 @@ main(int argc, char * const argv[])
 	instance.heuristics_instance.qdevice_instance_ptr = &instance;
 
 	qdevice_cmap_init(&instance);
-	if (qdevice_log_init(&instance, foreground, force_debug) == -1) {
+	if (qdevice_log_init(&instance, foreground, force_debug, bump_log_priority) == -1) {
 		errx(1, "Can't initialize logging");
 	}
 

+ 3 - 2
qdevices/qdevice-log.c

@@ -82,7 +82,7 @@ qdevice_log_configure(struct qdevice_instance *instance)
 }
 
 int
-qdevice_log_init(struct qdevice_instance *instance, int foreground, int force_debug)
+qdevice_log_init(struct qdevice_instance *instance, int foreground, int force_debug, int bump_log_priority)
 {
 	int res;
 	int log_target;
@@ -98,7 +98,8 @@ qdevice_log_init(struct qdevice_instance *instance, int foreground, int force_de
 	if (res == -1) {
 		return (res);
 	}
-	log_set_priority_bump(1);
+
+	log_set_priority_bump(bump_log_priority);
 
 	qdevice_log_configure(instance);
 

+ 1 - 1
qdevices/qdevice-log.h

@@ -43,7 +43,7 @@ extern "C" {
 #endif
 
 extern int		qdevice_log_init(struct qdevice_instance *instance, int foreground,
-    int force_debug);
+    int force_debug, int bump_log_priority);
 
 extern void		qdevice_log_configure(struct qdevice_instance *instance);