From 26313ef0e6177f6512c406b4141e977d122694f0 Mon Sep 17 00:00:00 2001 From: erickson Date: Sun, 20 Aug 2006 15:58:43 +0000 Subject: [PATCH] truncate messages more to prevent syslog overflow errors git-svn-id: svn://svn.open-ils.org/ILS/trunk@5610 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- OpenSRF/src/perlmods/OpenSRF/Utils/Logger.pm | 2 +- OpenSRF/src/utils/log.c | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/OpenSRF/src/perlmods/OpenSRF/Utils/Logger.pm b/OpenSRF/src/perlmods/OpenSRF/Utils/Logger.pm index 7db43a0235..69d79d251a 100644 --- a/OpenSRF/src/perlmods/OpenSRF/Utils/Logger.pm +++ b/OpenSRF/src/perlmods/OpenSRF/Utils/Logger.pm @@ -208,7 +208,7 @@ sub _log_message { $msg = "[$n:"."$$".":::] $msg"; - $msg = substr($msg, 0, 2000); + $msg = substr($msg, 0, 1536); if( $level == ACTIVITY() ) { if( is_act_syslog() ) { syslog( $fac | $l, $msg ); } diff --git a/OpenSRF/src/utils/log.c b/OpenSRF/src/utils/log.c index 8f3c2fc537..7e2959f9ba 100644 --- a/OpenSRF/src/utils/log.c +++ b/OpenSRF/src/utils/log.c @@ -124,8 +124,16 @@ void _osrfLogDetail( int level, const char* filename, int line, char* msg ) { break; } - if(__osrfLogType == OSRF_LOG_TYPE_SYSLOG ) - syslog( fac | lvl, "[%s:%d:%s:%d] %s", l, getpid(), filename, line, msg ); + if(__osrfLogType == OSRF_LOG_TYPE_SYSLOG ) { + char buf[1536]; + /* give syslog some breathing room, and be cute about it */ + strncat(buf, msg, 1535); + buf[1532] = '.'; + buf[1533] = '.'; + buf[1534] = '.'; + buf[1535] = '\0'; + syslog( fac | lvl, "[%s:%d:%s:%d] %s", l, getpid(), filename, line, buf ); + } else if( __osrfLogType == OSRF_LOG_TYPE_FILE ) _osrfLogToFile("[%s:%d:%s:%d] %s", l, getpid(), filename, line, msg ); -- 2.43.2