From f4af8e4a89c147fa14cae30736a62512686adffd Mon Sep 17 00:00:00 2001 From: Olusesan Ameye Date: Sat, 12 Nov 2022 18:36:56 -0500 Subject: [PATCH] Logger config --- www/application/config/config.php | 14 ++++++++-- www/application/controllers/Dash.php | 3 +- www/application/core/WRB_Controller.php | 37 +++++++++++++++++++------ 3 files changed, 42 insertions(+), 12 deletions(-) diff --git a/www/application/config/config.php b/www/application/config/config.php index d25a18ee..693024a9 100644 --- a/www/application/config/config.php +++ b/www/application/config/config.php @@ -159,7 +159,8 @@ $config['subclass_prefix'] = 'WRB_'; | Note: This will NOT disable or override the CodeIgniter-specific | autoloading (application/config/autoload.php) */ -$config['composer_autoload'] = TRUE; // FALSE; // Tolik +//$config['composer_autoload'] = TRUE; // FALSE; // Tolik +$config['composer_autoload'] = APPPATH.'../vendor/autoload.php'; /* |-------------------------------------------------------------------------- @@ -236,7 +237,7 @@ $config['directory_trigger'] = 'd'; | your log files will fill up very fast. | */ -$config['log_threshold'] = 0; +$config['log_threshold'] = 1; /* |-------------------------------------------------------------------------- @@ -534,3 +535,12 @@ $config['rewrite_short_tags'] = FALSE; | Array: array('10.0.1.200', '192.168.5.0/24') */ $config['proxy_ips'] = ''; + + +/* +|-------------------------------------------------------------------------- +| Graylog GELF IP/PORT +|-------------------------------------------------------------------------- +*/ +$config['gelf_host'] = '10.0.0.112'; +$config['gelf_port'] = '12201'; diff --git a/www/application/controllers/Dash.php b/www/application/controllers/Dash.php index 1b80decc..825cd04f 100644 --- a/www/application/controllers/Dash.php +++ b/www/application/controllers/Dash.php @@ -6,7 +6,7 @@ class Dash extends Users_Controller { function __construct() { parent::__construct(); - $this->logger->info('Dash extends Users_Controller contructor'); + $this->logger->error('Dash::__construct extends Users_Controller pong'); if (!isset($_SESSION['username']) or $_SESSION['username'] == '') { redirect(home); } @@ -18,7 +18,6 @@ class Dash extends Users_Controller { $this->renderSecurePage('users/view_help', $data); } public function index() { - $data['username'] = $_SESSION['username']; // = $this->input->post('username'); $data['name'] = $_SESSION['name']; // = $this->input->post('username'); $data['firstname'] = $_SESSION['firstname']; // = $ret->firstname; diff --git a/www/application/core/WRB_Controller.php b/www/application/core/WRB_Controller.php index e41e85b0..7bdc2206 100644 --- a/www/application/core/WRB_Controller.php +++ b/www/application/core/WRB_Controller.php @@ -5,6 +5,7 @@ use Monolog\Level; use Monolog\Logger; use Monolog\Handler\GelfHandler; + class WRB_Controller extends CI_Controller { var $template = array( @@ -58,17 +59,37 @@ class WRB_Controller extends CI_Controller { $this->load->library(array('session', 'lib_login')); - // Create the logger - $this->logger = new Logger($_SERVER['SERVER_ADDR']); + $gelf_host = $this->config->item('gelf_host'); + $gelf_port = $this->config->item('gelf_port'); + + if ($gelf_host != '' && $gelf_port != '') { + // Create the logger + $this->logger = new Logger($_SERVER['SERVER_ADDR']); - // Create Graylog GELF TCP transport - $transport = new Gelf\Transport\TcpTransport("10.0.0.112",12201); + // Create Graylog GELF TCP transport + $transport = new Gelf\Transport\TcpTransport($gelf_host, $gelf_port); - // Create GELF handler - $handler = new GelfHandler(new Gelf\Publisher($transport)); + // Create GELF handler + $handler = new GelfHandler(new Gelf\Publisher($transport)); - // Now add GELF handler to logger - $this->logger->pushHandler($handler); + // Now add GELF handler to logger + $this->logger->pushHandler($handler); + } else { + // Create shim to use regular logger + $logger = new class { + public function log($lvl,$msg,$ctx=[]) { log_message($lvl, $msg, $ctx); } + public function debug($msg,$ctx=[]) { log_message('debug', $msg, $ctx); } + public function info($msg,$ctx=[]) { log_message('info', $msg, $ctx); } + public function notice($msg,$ctx=[]) { log_message('notice', $msg, $ctx); } + public function warning($msg,$ctx=[]) { log_message('warning', $msg, $ctx); } + public function error($msg,$ctx=[]) { log_message('error', $msg, $ctx); } + public function critical($msg,$ctx=[]) { log_message('critical', $msg, $ctx); } + public function alert($msg,$ctx=[]) { log_message('alert', $msg, $ctx); } + public function emergency($msg,$ctx=[]) { log_message('emergency', $msg, $ctx); } + }; + $this->logger = $logger; + } + //*/ } public function paginationConfig($urlSeg,$perPage,$numRows,$linkPath,$numLnk){