/**
  * @param string $message
  * @return bool
  */
 public function SendErrorString($message)
 {
     $apiKey = $this->_apiKey;
     $options = $this->_getConfigOptions();
     $config = new \Airbrake\Configuration($apiKey, $options);
     $client = new \Airbrake\Client($config);
     return $client->notifyOnError($message);
 }
 public function onKernelException(GetResponseForExceptionEvent $event)
 {
     $exception = $event->getException();
     foreach ($this->ignoredExceptions as $ignoredException) {
         if ($exception instanceof $ignoredException) {
             return;
         }
     }
     $this->client->notifyOnException($exception);
     error_log($exception->getMessage() . ' in: ' . $exception->getFile() . ':' . $exception->getLine());
 }
 /**
  * Handles the PHP shutdown event.
  *
  * This event exists almost solely to provide a means to catch and log errors that might have been
  * otherwise lost when PHP decided to die unexpectedly.
  */
 public function onShutdown()
 {
     // Get the last error if there was one, if not, let's get out of here.
     if (!($error = error_get_last())) {
         return;
     }
     $fatal = array(E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR, E_USER_ERROR, E_RECOVERABLE_ERROR);
     if (!in_array($error['type'], $fatal)) {
         return;
     }
     $message = '[Shutdown Error]: %s';
     $message = sprintf($message, $error['message']);
     $backtrace = array(array('file' => $error['file'], 'line' => $error['line']));
     $this->client->notifyOnError($message, $backtrace);
     error_log($message . ' in: ' . $error['file'] . ':' . $error['line']);
 }
 public function onConsoleException(ConsoleExceptionEvent $event)
 {
     $exception = $event->getException();
     $this->client->notifyOnException($exception);
     error_log($exception->getMessage() . ' in: ' . $exception->getFile() . ':' . $exception->getLine());
 }