From 1a9e8c9694eb70ca5198eef2a8876b301ecaef34 Mon Sep 17 00:00:00 2001 From: Ad Schellevis Date: Fri, 13 Nov 2015 13:45:25 +0000 Subject: [PATCH] (configd) send configd client issues to syslog, closes https://github.com/opnsense/core/issues/464 --- .../mvc/app/library/OPNsense/Core/Backend.php | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/src/opnsense/mvc/app/library/OPNsense/Core/Backend.php b/src/opnsense/mvc/app/library/OPNsense/Core/Backend.php index 82b51012f..63bb2d3b2 100644 --- a/src/opnsense/mvc/app/library/OPNsense/Core/Backend.php +++ b/src/opnsense/mvc/app/library/OPNsense/Core/Backend.php @@ -29,6 +29,8 @@ */ namespace OPNsense\Core; +use Phalcon\Logger\Adapter\Syslog; + /** * Class Backend * @package OPNsense\Core @@ -48,6 +50,21 @@ class Backend { } + /** + * get system logger + * @param string $ident syslog identifier + * @return Syslog log handler + */ + protected function getLogger($ident = "configd") + { + $logger = new Syslog($ident, array( + 'option' => LOG_PID, + 'facility' => LOG_LOCAL4 + )); + + return $logger; + } + /** * send event to backend * @param string $event event string @@ -67,14 +84,16 @@ class Backend sleep(1); $timeout_wait -= 1; if ($timeout_wait <= 0) { - throw new \Exception("failed waiting for configd (doesn't seem to be running)"); + $this->getLogger()->error("failed waiting for configd (doesn't seem to be running)"); + return null; } } $resp = ""; $stream = stream_socket_client('unix://'.$this->configdSocket, $errorNumber, $errorMessage, $poll_timeout); if ($stream === false) { - throw new \Exception("Failed to connect: $errorMessage"); + $this->getLogger()->error("Failed to connect: $errorMessage"); + return null; } stream_set_timeout($stream, $poll_timeout); @@ -97,7 +116,8 @@ class Backend // handle timeouts if ((time() - $starttime) > $timeout) { - throw new \Exception("Timeout (".$timeout.") executing :".$event); + $this->getLogger()->error("Failed to connect: $errorMessage"); + return null; } }