Skip to content
This repository was archived by the owner on Sep 10, 2021. It is now read-only.

Commit 6ddeb3d

Browse files
author
Jamie Snape
committed
Tweak logging to set correct levels for development and production
Also ensure log directory does not need to be writable
1 parent 5fc1d3c commit 6ddeb3d

File tree

1 file changed

+37
-44
lines changed

1 file changed

+37
-44
lines changed

core/Bootstrap.php

Lines changed: 37 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ protected function _initDoctype()
3333
$this->bootstrap('view');
3434
$view = $this->getResource('view');
3535
$view->doctype('XHTML1_STRICT');
36-
}//end _initDoctype
36+
}
3737

3838
/**
3939
* \fn protected _initConfig()
@@ -99,9 +99,9 @@ protected function _initConfig()
9999
'dbname' => $configDatabase->database->params->dbname,
100100
'port' => $configDatabase->database->params->port,
101101
'driver_options' => $pdoParams);
102-
if($configGlobal->environment == "production")
102+
if($configGlobal->environment == 'production')
103103
{
104-
Zend_Loader::loadClass("ProductionDbProfiler", BASE_PATH . '/core/models/profiler');
104+
Zend_Loader::loadClass('ProductionDbProfiler', BASE_PATH . '/core/models/profiler');
105105
$params['profiler'] = new ProductionDbProfiler();
106106
}
107107
$db = Zend_Db::factory($configDatabase->database->adapter, $params);
@@ -125,52 +125,45 @@ protected function _initConfig()
125125

126126
Zend_Registry::set('configDatabase', $configDatabase);
127127

128-
// Init Log
129-
if(is_writable(BASE_PATH."/log"))
128+
// Init log
129+
if($configGlobal->environment == 'production')
130130
{
131-
$columnMapping = array('priority' => 'priority',
132-
'message' => 'message',
133-
'datetime' => 'timestamp',
134-
'module' => 'module');
135-
if($configGlobal->environment == 'production')
136-
{
137-
$formatter = new Zend_Log_Formatter_Simple();
138-
Zend_Loader_Autoloader::getInstance()->suppressNotFoundWarnings(false);
139-
$logger = Zend_Log::factory(array(
140-
array(
141-
'writerName' => 'Stream',
142-
'writerParams' => array(
143-
'stream' => './log/prod.log'),
144-
'filterName' => 'Priority',
145-
'filterParams' => array(
146-
'priority' => Zend_Log::INFO))));
147-
}
148-
else
149-
{
150-
Zend_Loader_Autoloader::getInstance()->suppressNotFoundWarnings(true);
151-
$logger = Zend_Log::factory(array(
152-
array(
153-
'writerName' => 'Stream',
154-
'writerParams' => array(
155-
'stream' => './log/dev.log'),
156-
'filterName' => 'Priority',
157-
'filterParams' => array(
158-
'priority' => Zend_Log::WARN))));
159-
}
160-
if($configDatabase->database->adapter == 'PDO_MYSQL'
161-
&& $configDatabase->database->params->password != 'set_your_password')
162-
{
163-
$writerDb = new Zend_Log_Writer_Db($db, 'errorlog', $columnMapping);
164-
$logger->addWriter($writerDb);
165-
$logger->setEventItem('datetime', date('Y-m-d H:i:s'));
166-
$logger->setEventItem('module', 'unknown');
167-
}
131+
Zend_Loader_Autoloader::getInstance()->suppressNotFoundWarnings(true);
132+
$priority = Zend_Log::WARN;
168133
}
169134
else
170135
{
171-
$redacteur = new Zend_Log_Writer_Stream('php://output');
172-
$logger = new Zend_Log($redacteur);
136+
Zend_Loader_Autoloader::getInstance()->suppressNotFoundWarnings(false);
137+
$priority = Zend_Log::DEBUG;
138+
}
139+
140+
if(is_writable(BASE_PATH . '/log'))
141+
{
142+
$stream = './log/' . $configGlobal->environment . '.log';
143+
}
144+
else
145+
{
146+
$stream = 'php://output';
147+
}
148+
$logger = Zend_Log::factory(array(
149+
array(
150+
'writerName' => 'Stream',
151+
'writerParams' => array('stream' => $stream),
152+
'formatterName' => 'Simple',
153+
'filterName' => 'Priority',
154+
'filterParams' => array('priority' => $priority))));
155+
if($configDatabase->database->type == 'pdo' && $configDatabase->database->params->password != 'set_your_password')
156+
{
157+
$columnMapping = array(
158+
'priority' => 'priority',
159+
'message' => 'message',
160+
'module' => 'module');
161+
$writer = new Zend_Log_Writer_Db($db, 'errorlog', $columnMapping);
162+
$filter = new Zend_Log_Filter_Priority(Zend_Log::INFO);
163+
$writer->addFilter($filter);
164+
$logger->addWriter($writer);
173165
}
166+
$logger->registerErrorHandler();
174167
Zend_Registry::set('logger', $logger);
175168

176169
// Init error handler

0 commit comments

Comments
 (0)