Overview

Packages

  • log4php
    • appenders
    • configurators
    • filters
    • helpers
    • layouts
    • pattern
    • renderers

Classes

  • LoggerAppenderConsole
  • LoggerAppenderDailyFile
  • LoggerAppenderEcho
  • LoggerAppenderFile
  • LoggerAppenderFirePHP
  • LoggerAppenderMail
  • LoggerAppenderMailEvent
  • LoggerAppenderMongoDB
  • LoggerAppenderNull
  • LoggerAppenderPDO
  • LoggerAppenderPhp
  • LoggerAppenderRollingFile
  • LoggerAppenderSocket
  • LoggerAppenderSyslog
  • Overview
  • Package
  • Class
  • Tree
  1: <?php
  2: /**
  3:  * Licensed to the Apache Software Foundation (ASF) under one or more
  4:  * contributor license agreements.  See the NOTICE file distributed with
  5:  * this work for additional information regarding copyright ownership.
  6:  * The ASF licenses this file to You under the Apache License, Version 2.0
  7:  * (the "License"); you may not use this file except in compliance with
  8:  * the License.  You may obtain a copy of the License at
  9:  *
 10:  *     http://www.apache.org/licenses/LICENSE-2.0
 11:  *
 12:  * Unless required by applicable law or agreed to in writing, software
 13:  * distributed under the License is distributed on an "AS IS" BASIS,
 14:  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 15:  * See the License for the specific language governing permissions and
 16:  * limitations under the License.
 17:  */
 18: 
 19: /**
 20:  * Logs messages as HTTP headers using the FirePHP Insight API.
 21:  * 
 22:  * This appender requires the FirePHP server library version 1.0 or later.
 23:  * 
 24:  * ## Configurable parameters: ##
 25:  * 
 26:  * - **target** - (string) The target to which messages will be sent. Possible options are 
 27:  *            'page' (default), 'request', 'package' and 'controller'. For more details,
 28:  *            see FirePHP documentation.
 29:  * 
 30:  * This class was originally contributed by Bruce Ingalls (Bruce.Ingalls-at-gmail-dot-com).
 31:  * 
 32:  * @link https://github.com/firephp/firephp FirePHP homepage.
 33:  * @link http://sourcemint.com/github.com/firephp/firephp/1:1.0.0b1rc6/-docs/Welcome FirePHP documentation.
 34:  * @link http://sourcemint.com/github.com/firephp/firephp/1:1.0.0b1rc6/-docs/Configuration/Constants FirePHP constants documentation.
 35:  * @link http://logging.apache.org/log4php/docs/appenders/firephp.html Appender documentation
 36:  * 
 37:  * @version $Revision: 1343684 $
 38:  * @package log4php
 39:  * @subpackage appenders
 40:  * @since 2.3
 41:  */
 42: class LoggerAppenderFirePHP extends LoggerAppender {
 43:     
 44:     /**
 45:      * Instance of the Insight console class.
 46:      * @var Insight_Plugin_Console
 47:      */
 48:     protected $console;
 49:     
 50:     /**
 51:      * The target for log messages. Possible values are: 'page' (default), 
 52:      * 'request', 'package' and 'contoller'.
 53:      */
 54:     protected $target = 'page';
 55: 
 56:     public function activateOptions() {
 57:         if (method_exists('FirePHP', 'to')) {
 58:             $this->console = FirePHP::to($this->target)->console();
 59:             $this->closed = false;
 60:         } else {
 61:             $this->warn('FirePHP is not installed correctly. Closing appender.');
 62:         }
 63:     }
 64:     
 65:     public function append(LoggerLoggingEvent $event) {
 66:         $msg = $event->getMessage();
 67:         
 68:         // Skip formatting for objects and arrays which are handled by FirePHP.
 69:         if (!is_array($msg) && !is_object($msg)) {
 70:             $msg = $this->getLayout()->format($event);
 71:         }
 72:         
 73:         switch ($event->getLevel()->toInt()) {
 74:             case LoggerLevel::TRACE:
 75:             case LoggerLevel::DEBUG:
 76:                 $this->console->log($msg);
 77:                 break;
 78:             case LoggerLevel::INFO:
 79:                 $this->console->info($msg);
 80:                 break;
 81:             case LoggerLevel::WARN:
 82:                 $this->console->warn($msg);
 83:                 break;
 84:             case LoggerLevel::ERROR:
 85:             case LoggerLevel::FATAL:
 86:                 $this->console->error($msg);
 87:                 break;
 88:         }
 89:     }
 90:     
 91:     /** Returns the target. */
 92:     public function getTarget() {
 93:         return $this->target;
 94:     }
 95: 
 96:     /** Sets the target. */
 97:     public function setTarget($target) {
 98:         $this->setString('target', $target);
 99:     }
100: }
Apache log4php API documentation generated by ApiGen 2.8.0