aboutsummaryrefslogtreecommitdiff
path: root/sysklogd
diff options
context:
space:
mode:
authorvda <vda@69ca8d6d-28ef-0310-b511-8ec308f3f277>2006-09-30 19:17:40 +0000
committervda <vda@69ca8d6d-28ef-0310-b511-8ec308f3f277>2006-09-30 19:17:40 +0000
commitde82ea1376e53e06cd2057f4a6ab8ba36be456e3 (patch)
tree285bba5db4a019bfc00b2d51a3ebf43d225060e4 /sysklogd
parent69ddd0ad5306c9096823182f6a0504e0677b3814 (diff)
downloadbusybox-w32-de82ea1376e53e06cd2057f4a6ab8ba36be456e3.tar.gz
busybox-w32-de82ea1376e53e06cd2057f4a6ab8ba36be456e3.tar.bz2
busybox-w32-de82ea1376e53e06cd2057f4a6ab8ba36be456e3.zip
syslogd: add option to suppress logging of messages lower than level N (-n N)
git-svn-id: svn://busybox.net/trunk/busybox@16272 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'sysklogd')
-rw-r--r--sysklogd/syslogd.c20
1 files changed, 16 insertions, 4 deletions
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index 9a5a04adb..a257e740e 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -42,6 +42,9 @@ static int logFileRotate = 1;
42/* interval between marks in seconds */ 42/* interval between marks in seconds */
43static int MarkInterval = 20 * 60; 43static int MarkInterval = 20 * 60;
44 44
45/* level of messages to be locally logged */
46static int logLevel = 8;
47
45/* localhost's name */ 48/* localhost's name */
46static char LocalHostName[64]; 49static char LocalHostName[64];
47 50
@@ -413,10 +416,12 @@ retry:
413#endif 416#endif
414 { 417 {
415 /* now spew out the message to wherever it is supposed to go */ 418 /* now spew out the message to wherever it is supposed to go */
416 if (opts & SYSLOG_OPT_small) 419 if (pri == 0 || LOG_PRI(pri) < logLevel) {
417 message("%s %s\n", timestamp, msg); 420 if (opts & SYSLOG_OPT_small)
418 else 421 message("%s %s\n", timestamp, msg);
419 message("%s %s %s %s\n", timestamp, LocalHostName, res, msg); 422 else
423 message("%s %s %s %s\n", timestamp, LocalHostName, res, msg);
424 }
420 } 425 }
421} 426}
422 427
@@ -581,6 +586,13 @@ int syslogd_main(int argc, char **argv)
581 case 'O': 586 case 'O':
582 logFilePath = optarg; 587 logFilePath = optarg;
583 break; 588 break;
589 case 'l':
590 logLevel = atoi(optarg);
591 /* Valid levels are between 1 and 8 */
592 if (logLevel < 1 || logLevel > 8) {
593 bb_show_usage();
594 }
595 break;
584#ifdef CONFIG_FEATURE_ROTATE_LOGFILE 596#ifdef CONFIG_FEATURE_ROTATE_LOGFILE
585 case 's': 597 case 's':
586 logFileSize = atoi(optarg) * 1024; 598 logFileSize = atoi(optarg) * 1024;