library/log4php/appenders/LoggerAppenderSyslog.php
changeset 46 f11c31f7fa3e
parent 45 a56e7f9a0463
child 47 03388ec805b4
deleted file mode 100644
--- a/library/log4php/appenders/LoggerAppenderSyslog.php
+++ /dev/null
@@ -1,303 +0,0 @@
-<?php
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/**
- * Log events to a system log using the PHP syslog() function.
- *
- * This appenders requires a layout.
- *
- * ## Configurable parameters: ##
- *
- * - **ident** - The ident of the syslog message.
- * - **priority** - The priority for the syslog message (used when overriding
- *     priority).
- * - **facility** - The facility for the syslog message
- * - **overridePriority** - If set to true, the message priority will always
- *     use the value defined in {@link $priority}, otherwise the priority will
- *     be determined by the message's log level.
- * - **option** - The option value for the syslog message.
- *
- * Recognised syslog options are:
- *
- * - CONS     - if there is an error while sending data to the system logger, write directly to the system console
- * - NDELAY - open the connection to the logger immediately
- * - ODELAY - delay opening the connection until the first message is logged (default)
- * - PERROR - print log message also to standard error
- * - PID    - include PID with each message
- *
- * Multiple options can be set by delimiting them with a pipe character,
- * e.g.: "CONS|PID|PERROR".
- *
- * Recognised syslog priorities are:
- *
- * - EMERG
- * - ALERT
- * - CRIT
- * - ERR
- * - WARNING
- * - NOTICE
- * - INFO
- * - DEBUG
- *
- * Levels are mapped as follows:
- *
- * - <b>FATAL</b> to LOG_ALERT
- * - <b>ERROR</b> to LOG_ERR
- * - <b>WARN</b> to LOG_WARNING
- * - <b>INFO</b> to LOG_INFO
- * - <b>DEBUG</b> to LOG_DEBUG
- * - <b>TRACE</b> to LOG_DEBUG
- *
- * @version $Revision: 1337820 $
- * @package log4php
- * @subpackage appenders
- * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
- * @link http://logging.apache.org/log4php/docs/appenders/syslog.html Appender documentation
- */
-class LoggerAppenderSyslog extends LoggerAppender {
-
-    /**
-     * The ident string is added to each message. Typically the name of your application.
-     *
-     * @var string
-     */
-    protected $ident = "Apache log4php";
-
-    /**
-     * The syslog priority to use when overriding priority. This setting is
-     * required if {@link overridePriority} is set to true.
-     *
-     * @var string
-     */
-    protected $priority;
-
-    /**
-     * The option used when opening the syslog connection.
-     *
-     * @var string
-     */
-    protected $option = 'PID|CONS';
-
-    /**
-     * The facility value indicates the source of the message.
-     *
-     * @var string
-     */
-    protected $facility = 'USER';
-
-    /**
-     * If set to true, the message priority will always use the value defined
-     * in {@link $priority}, otherwise the priority will be determined by the
-     * message's log level.
-     *
-     * @var string
-     */
-    protected $overridePriority = false;
-
-    /**
-     * Holds the int value of the {@link $priority}.
-     * @var int
-     */
-    private $intPriority;
-
-    /**
-     * Holds the int value of the {@link $facility}.
-     * @var int
-     */
-    private $intFacility;
-
-    /**
-     * Holds the int value of the {@link $option}.
-     * @var int
-     */
-    private $intOption;
-
-    /**
-     * Sets the {@link $ident}.
-     *
-     * @param string $ident
-     */
-    public function setIdent($ident) {
-        $this->ident = $ident;
-    }
-
-    /**
-     * Sets the {@link $priority}.
-     *
-     * @param string $priority
-     */
-    public function setPriority($priority) {
-        $this->priority = $priority;
-    }
-
-    /**
-     * Sets the {@link $facility}.
-     *
-     * @param string $facility
-     */
-    public function setFacility($facility) {
-        $this->facility = $facility;
-    }
-
-    /**
-     * Sets the {@link $overridePriority}.
-     *
-     * @param string $overridePriority
-     */
-    public function setOverridePriority($overridePriority) {
-        $this->overridePriority = $overridePriority;
-    }
-
-    /**
-     * Sets the 'option' parameter.
-     *
-     * @param string $option
-     */
-    public function setOption($option) {
-        $this->option = $option;
-    }
-
-    /**
-     * Returns the 'ident' parameter.
-     *
-     * @return string $ident
-     */
-    public function getIdent() {
-        return $this->ident;
-    }
-
-    /**
-     * Returns the 'priority' parameter.
-     *
-     * @return string
-     */
-    public function getPriority() {
-        return $this->priority;
-    }
-
-    /**
-     * Returns the 'facility' parameter.
-     *
-     * @return string
-     */
-    public function getFacility() {
-        return $this->facility;
-    }
-
-    /**
-     * Returns the 'overridePriority' parameter.
-     *
-     * @return string
-     */
-    public function getOverridePriority() {
-        return $this->overridePriority;
-    }
-
-    /**
-     * Returns the 'option' parameter.
-     *
-     * @return string
-     */
-    public function getOption() {
-        return $this->option;
-    }
-
-
-    public function activateOptions() {
-        $this->intPriority = $this->parsePriority();
-        $this->intOption = $this->parseOption();
-        $this->intFacility = $this->parseFacility();
-
-        $this->closed = false;
-    }
-
-    public function close() {
-        if ($this->closed != true) {
-            closelog();
-            $this->closed = true;
-        }
-    }
-
-    /**
-     * Appends the event to syslog.
-     *
-     * Log is opened and closed each time because if it is not closed, it
-     * can cause the Apache httpd server to log to whatever ident/facility
-     * was used in openlog().
-     *
-     * @see http://www.php.net/manual/en/function.syslog.php#97843
-     */
-    public function append(LoggerLoggingEvent $event) {
-        $priority = $this->getSyslogPriority($event->getLevel());
-        $message = $this->layout->format($event);
-
-        openlog($this->ident, $this->intOption, $this->intFacility);
-        syslog($priority, $message);
-        closelog();
-    }
-
-    /** Determines which syslog priority to use based on the given level. */
-    private function getSyslogPriority(LoggerLevel $level) {
-        if ($this->overridePriority) {
-            return $this->intPriority;
-        }
-        return $level->getSyslogEquivalent();
-    }
-
-    /** Parses a syslog option string and returns the correspodning int value. */
-    private function parseOption() {
-        $value = 0;
-        $options = explode('|', $this->option);
-
-        foreach ($options as $option) {
-            if (!empty($option)) {
-                $constant = "LOG_" . trim($option);
-                if (defined($constant)) {
-                    $value |= constant($constant);
-                } else {
-                    trigger_error("log4php: Invalid syslog option provided: $option. Whole option string: {$this->option}.", E_USER_WARNING);
-                }
-            }
-        }
-        return $value;
-    }
-
-    /** Parses the facility string and returns the corresponding int value. */
-    private function parseFacility() {
-        if (!empty($this->facility)) {
-            $constant = "LOG_" . trim($this->facility);
-            if (defined($constant)) {
-                return constant($constant);
-            } else {
-                trigger_error("log4php: Invalid syslog facility provided: {$this->facility}.", E_USER_WARNING);
-            }
-        }
-    }
-
-    /** Parses the priority string and returns the corresponding int value. */
-    private function parsePriority() {
-        if (!empty($this->priority)) {
-            $constant = "LOG_" . trim($this->priority);
-            if (defined($constant)) {
-                return constant($constant);
-            } else {
-                trigger_error("log4php: Invalid syslog priority provided: {$this->priority}.", E_USER_WARNING);
-            }
-        }
-    }
-}