Development

Changeset 5030

You must first sign up to be able to contribute.

Changeset 5030

Show
Ignore:
Timestamp:
09/10/07 18:01:02 (6 years ago)
Author:
fabien
Message:

sfErrorLoggerPlugin: added a try/catch block around logger to avoid exception if the database is not properly configured

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • plugins/sfErrorLoggerPlugin/README

    r2851 r5030  
    4848  /log/* 
    4949}}} 
     50 
     51== Changelog == 
     52 
     53=== 2007-09-10 | 1.0.6 === 
     54 
     55 * fabien: added a try/catch block around logger to avoid exception if the database is not properly configured 
  • plugins/sfErrorLoggerPlugin/lib/log/sfErrorLogger.class.php

    r2481 r5030  
    2222    $context = sfContext::getInstance(); 
    2323 
    24     // log exception in db 
    25     $log = new sfErrorLog(); 
    26     $log->setType(500); 
    27     $log->setClassName(get_class($exception)); 
    28     $log->setMessage(null !== $exception->getMessage() ? $exception->getMessage() : 'n/a'); 
    29     $log->setModuleName($context->getModuleName()); 
    30     $log->setActionName($context->getActionName()); 
    31     $log->setExceptionObject($exception); 
    32     $log->setRequest($context->getRequest()); 
    33     $log->save(); 
     24    // is database configured? 
     25    try 
     26    { 
     27      Propel::getConnection(); 
     28 
     29      // log exception in db 
     30      $log = new sfErrorLog(); 
     31      $log->setType(500); 
     32      $log->setClassName(get_class($exception)); 
     33      $log->setMessage(null !== $exception->getMessage() ? $exception->getMessage() : 'n/a'); 
     34      $log->setModuleName($context->getModuleName()); 
     35      $log->setActionName($context->getActionName()); 
     36      $log->setExceptionObject($exception); 
     37      $log->setRequest($context->getRequest()); 
     38      $log->save(); 
     39    } 
     40    catch (PropelException $e) 
     41    { 
     42    } 
    3443 
    3544    return false; 
     
    3847  public function log404($controller, $moduleName, $actionName) 
    3948  { 
    40     // log 404 in db 
    41     $log = new sfErrorLog(); 
    42     $log->setType(404); 
    43     $log->setClassName(null); 
    44     $log->setMessage('n/a'); 
    45     $log->setModuleName($moduleName); 
    46     $log->setActionName($actionName); 
    47     $log->setExceptionObject(null); 
    48     $log->setRequest($controller->getContext()->getRequest()); 
    49     $log->save(); 
     49    // is database configured? 
     50    try 
     51    { 
     52      Propel::getConnection(); 
     53 
     54      // log 404 in db 
     55      $log = new sfErrorLog(); 
     56      $log->setType(404); 
     57      $log->setClassName(null); 
     58      $log->setMessage('n/a'); 
     59      $log->setModuleName($moduleName); 
     60      $log->setActionName($actionName); 
     61      $log->setExceptionObject(null); 
     62      $log->setRequest($controller->getContext()->getRequest()); 
     63      $log->save(); 
     64    } 
     65    catch (PropelException $e) 
     66    { 
     67    } 
    5068  } 
    5169}