ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 4898 for OpenPNE/trunk


Ignore:
Timestamp:
Jan 10, 2008, 7:41:07 PM (15 years ago)
Author:
ebihara
Message:

#1756:PEAR::Logのバージョンを1.9.6から1.9.14に上げた

Location:
OpenPNE/trunk/lib/include
Files:
1 added
7 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/trunk/lib/include/Log.php

    r2 r4898  
    11<?php
    22/**
    3  * $Header: /repository/pear/Log/Log.php,v 1.63 2006/05/23 05:59:58 jon Exp $
     3 * $Header: /repository/pear/Log/Log.php,v 1.67 2007/12/13 06:46:30 jon Exp $
    44 * $Horde: horde/lib/Log.php,v 1.15 2000/06/29 23:39:45 jon Exp $
    55 *
    6  * @version $Revision: 1.63 $
     6 * @version $Revision: 1.67 $
    77 * @package Log
    88 */
     
    4141     *
    4242     * @var boolean
    43      * @access private
     43     * @access protected
    4444     */
    4545    var $_opened = false;
     
    4949     *
    5050     * @var integer
    51      * @access private
     51     * @access protected
    5252     */
    5353    var $_id = 0;
     
    5757     *
    5858     * @var string
    59      * @access private
     59     * @access protected
    6060     */
    6161    var $_ident = '';
     
    6565     *
    6666     * @var integer
    67      * @access private
     67     * @access protected
    6868     */
    6969    var $_priority = PEAR_LOG_INFO;
     
    7373     *
    7474     * @var integer
    75      * @access private
     75     * @access protected
    7676     */
    7777    var $_mask = PEAR_LOG_ALL;
     
    8181     *
    8282     * @var array
    83      * @access private
     83     * @access protected
    8484     */
    8585    var $_listeners = array();
     
    9090     *
    9191     * @var array
    92      * @access private
     92     * @access protected
    9393     */
    9494    var $_formatMap = array('%{timestamp}'  => '%1$s',
     
    101101                            '%\{'           => '%%{');
    102102
     103    /**
     104     * Utility function which wraps PHP's class_exists() function to ensure
     105     * consistent behavior between PHP versions 4 and 5.  Autoloading behavior
     106     * is always disabled.
     107     *
     108     * @param string $class     The name of the class whose existence should
     109     *                          be tested.
     110     *
     111     * @return bool             True if the class exists.
     112     *
     113     * @access private
     114     * @since Log 1.9.13
     115     */
     116    function _classExists($class)
     117    {
     118        if (version_compare(PHP_VERSION, '5.0.0', 'ge')) {
     119            return class_exists($class, false);
     120        }
     121
     122        return class_exists($class);
     123    }
    103124
    104125    /**
     
    139160         * version of the named class.
    140161         */
    141         if (!class_exists($class)) {
     162        if (!Log::_classExists($class)) {
    142163            include_once $classfile;
    143164        }
    144165
    145166        /* If the class exists, return a new instance of it. */
    146         if (class_exists($class)) {
     167        if (Log::_classExists($class)) {
    147168            $obj = &new $class($name, $ident, $conf, $level);
    148169            return $obj;
     
    391412     * @return string           The string representation of the message.
    392413     *
    393      * @access private
     414     * @access protected
    394415     */
    395416    function _extractMessage($message)
     
    494515     * @return  string  Formatted log string.
    495516     *
    496      * @access  private
     517     * @access  protected
    497518     * @since   Log 1.9.4
    498519     */
     
    503524         * variables (%5, %6, %7), generate the backtrace and fetch them.
    504525         */
    505         if (preg_match('/%[567]/', $format)) {
     526        if (strpos($format, '%5') || strpos($format, '%6') || strpos($format, '%7')) {
    506527            list($file, $line, $func) = $this->_getBacktraceVars(2);
    507528        }
     
    529550     * @return string           The string representation of $level.
    530551     *
     552     * @access  public
    531553     * @since   Log 1.0
    532554     */
     
    557579     *                          the the specified priority name.
    558580     *
     581     * @access  public
    559582     * @since   Log 1.9.0
    560583     */
     
    687710     *                  log mask.
    688711     *
    689      * @access  private
     712     * @access  protected
    690713     * @since   Log 1.7.0
    691714     */
     
    773796     * @param array     $event      A hash describing the log event.
    774797     *
    775      * @access private
     798     * @access protected
    776799     */
    777800    function _announce($event)
  • OpenPNE/trunk/lib/include/Log/console.php

    r2 r4898  
    11<?php
    22/**
    3  * $Header: /repository/pear/Log/Log/console.php,v 1.23 2006/06/29 07:09:21 jon Exp $
     3 * $Header: /repository/pear/Log/Log/console.php,v 1.24 2006/12/07 04:15:02 jon Exp $
    44 *
    5  * @version $Revision: 1.23 $
     5 * @version $Revision: 1.24 $
    66 * @package Log
    77 */
     
    151151        }
    152152 
    153         return fflush($this->_stream);
     153        if (is_resource($this->_stream)) {
     154            return fflush($this->_stream);
     155        }
     156
     157        return false;
    154158    }
    155159
  • OpenPNE/trunk/lib/include/Log/display.php

    r2 r4898  
    11<?php
    22/**
    3  * $Header: /repository/pear/Log/Log/display.php,v 1.9 2006/06/29 07:09:21 jon Exp $
     3 * $Header: /repository/pear/Log/Log/display.php,v 1.10 2007/12/30 00:49:04 jon Exp $
    44 *
    5  * @version $Revision: 1.9 $
     5 * @version $Revision: 1.10 $
    66 * @package Log
    77 */
     
    2323{
    2424    /**
    25      * String to output before an error message
     25     * String containing the format of a log line.
    2626     * @var string
    2727     * @access private
    2828     */
    29     var $_error_prepend = '';
     29    var $_lineFormat = '<b>%3$s</b>: %4$s';
    3030
    3131    /**
    32      * String to output after an error message
     32     * String containing the timestamp format.  It will be passed directly to
     33     * strftime().  Note that the timestamp string will generated using the
     34     * current locale.
    3335     * @var string
    3436     * @access private
    3537     */
    36     var $_error_append = '';
    37 
    38     /**
    39      * String used to represent a line break.
    40      * @var string
    41      * @access private
    42      */
    43     var $_linebreak = "<br />\n";
     38    var $_timeFormat = '%b %d %H:%M:%S';
    4439
    4540    /**
     
    5954        $this->_mask = Log::UPTO($level);
    6055
    61         if (isset($conf['error_prepend'])) {
    62             $this->_error_prepend = $conf['error_prepend'];
    63         } else {
    64             $this->_error_prepend = ini_get('error_prepend_string');
     56        /* Start by configuring the line format. */
     57        if (!empty($conf['lineFormat'])) {
     58            $this->_lineFormat = str_replace(array_keys($this->_formatMap),
     59                                             array_values($this->_formatMap),
     60                                             $conf['lineFormat']);
    6561        }
    6662
    67         if (isset($conf['error_append'])) {
    68             $this->_error_append = $conf['error_append'];
     63        /* We may need to prepend a string to our line format. */
     64        $prepend = null;
     65        if (isset($conf['error_prepend'])) {
     66            $prepend = $conf['error_prepend'];
    6967        } else {
    70             $this->_error_append = ini_get('error_append_string');
     68            $prepend = ini_get('error_prepend_string');
     69        }
     70        if (!empty($prepend)) {
     71            $this->_lineFormat = $prepend . $this->_lineFormat;
    7172        }
    7273
     74        /* We may also need to append a string to our line format. */
     75        $append = null;
     76        if (isset($conf['error_append'])) {
     77            $append = $conf['error_append'];
     78        } else {
     79            $append = ini_get('error_append_string');
     80        }
     81        if (!empty($append)) {
     82            $this->_lineFormat .= $append;
     83        }
     84
     85        /* Lastly, the line ending sequence is also configurable. */
    7386        if (isset($conf['linebreak'])) {
    74             $this->_linebreak = $conf['linebreak'];
     87            $this->_lineFormat .= $conf['linebreak'];
     88        }
     89
     90        /* The user can also change the time format. */
     91        if (!empty($conf['timeFormat'])) {
     92            $this->_timeFormat = $conf['timeFormat'];
    7593        }
    7694    }
     
    128146
    129147        /* Build and output the complete log line. */
    130         echo $this->_error_prepend .
    131              '<b>' . ucfirst($this->priorityToString($priority)) . '</b>: '.
    132              nl2br(htmlspecialchars($message)) .
    133              $this->_error_append . $this->_linebreak;
     148        echo $this->_format($this->_lineFormat,
     149                            strftime($this->_timeFormat),
     150                            $priority,
     151                            nl2br(htmlspecialchars($message)));
    134152
    135153        /* Notify observers about this log message. */
  • OpenPNE/trunk/lib/include/Log/file.php

    r2 r4898  
    11<?php
    22/**
    3  * $Header: /repository/pear/Log/Log/file.php,v 1.45 2006/01/11 07:56:37 jon Exp $
     3 * $Header: /repository/pear/Log/Log/file.php,v 1.46 2006/12/07 04:15:02 jon Exp $
    44 *
    5  * @version $Revision: 1.45 $
     5 * @version $Revision: 1.46 $
    66 * @package Log
    77 */
     
    251251    function flush()
    252252    {
    253         return fflush($this->_fp);
     253        if (is_resource($this->_fp)) {
     254            return fflush($this->_fp);
     255        }
     256
     257        return false;
    254258    }
    255259
  • OpenPNE/trunk/lib/include/Log/mail.php

    r2 r4898  
    11<?php
    22/**
    3  * $Header: /repository/pear/Log/Log/mail.php,v 1.24 2006/01/30 05:37:18 jon Exp $
    4  *
    5  * @version $Revision: 1.24 $
     3 * $Header: /repository/pear/Log/Log/mail.php,v 1.26 2006/12/18 00:53:02 jon Exp $
     4 *
     5 * @version $Revision: 1.26 $
    66 * @package Log
    77 */
     
    2929{
    3030    /**
    31      * String holding the recipient's email address.
    32      * @var string
    33      * @access private
    34      */
    35     var $_recipient = '';
     31     * String holding the recipients' email addresses.  Multiple addresses
     32     * should be separated with commas.
     33     * @var string
     34     * @access private
     35     */
     36    var $_recipients = '';
    3637
    3738    /**
     
    7980    var $_message = '';
    8081
     82    /**
     83     * Flag used to indicated that log lines have been written to the message
     84     * body and the message should be sent on close().
     85     * @var boolean
     86     * @access private
     87     */
     88    var $_shouldSend = false;
    8189
    8290    /**
     
    8795     *   $conf['subject'] : the mail's "Subject" line.
    8896     *
    89      * @param string $name      The filename of the logfile.
     97     * @param string $name      The message's recipients.
    9098     * @param string $ident     The identity string.
    9199     * @param array  $conf      The configuration array.
     
    97105    {
    98106        $this->_id = md5(microtime());
    99         $this->_recipient = $name;
     107        $this->_recipients = $name;
    100108        $this->_ident = $ident;
    101109        $this->_mask = Log::UPTO($level);
     
    152160            }
    153161            $this->_opened = true;
     162            $_shouldSend = false;
    154163        }
    155164
     
    166175    {
    167176        if ($this->_opened) {
    168             if (!empty($this->_message)) {
     177            if ($this->_shouldSend && !empty($this->_message)) {
    169178                $headers = "From: $this->_from\r\n";
    170179                $headers .= "User-Agent: Log_mail";
    171180
    172                 if (mail($this->_recipient, $this->_subject, $this->_message,
     181                if (mail($this->_recipients, $this->_subject, $this->_message,
    173182                         $headers) == false) {
    174183                    error_log("Log_mail: Failure executing mail()", 0);
     
    178187                /* Clear the message string now that the email has been sent. */
    179188                $this->_message = '';
     189                $this->_shouldSend = false;
    180190            }
    181191            $this->_opened = false;
     
    234244        $message = $this->_extractMessage($message);
    235245
    236         /* Build the string containing the complete log line. */
     246        /* Append the string containing the complete log line. */
    237247        $this->_message .= $this->_format($this->_lineFormat,
    238248                                          strftime($this->_timeFormat),
    239249                                          $priority, $message) . "\r\n";
     250        $this->_shouldSend = true;
    240251
    241252        /* Notify observers about this log message. */
  • OpenPNE/trunk/lib/include/Log/sql.php

    r2 r4898  
    11<?php
    22/**
    3  * $Header: /repository/pear/Log/Log/sql.php,v 1.40 2006/01/03 04:12:45 jon Exp $
     3 * $Header: /repository/pear/Log/Log/sql.php,v 1.41 2007/12/23 20:30:23 jon Exp $
    44 * $Horde: horde/lib/Log/sql.php,v 1.12 2000/08/16 20:27:34 chuck Exp $
    55 *
    6  * @version $Revision: 1.40 $
     6 * @version $Revision: 1.41 $
    77 * @package Log
    88 */
     
    126126
    127127        /* Now that we have a table name, assign our SQL statement. */
    128         if (!empty($this->_sql)) {
     128        if (!empty($conf['sql'])) {
    129129            $this->_sql = $conf['sql'];
    130130        } else {
  • OpenPNE/trunk/lib/include/Log/syslog.php

    r2 r4898  
    11<?php
    22/**
    3  * $Header: /repository/pear/Log/Log/syslog.php,v 1.23 2005/02/26 14:48:59 chagenbu Exp $
     3 * $Header: /repository/pear/Log/Log/syslog.php,v 1.25 2007/01/29 05:09:07 jon Exp $
    44 * $Horde: horde/lib/Log/syslog.php,v 1.6 2000/06/28 21:36:13 jon Exp $
    55 *
    6  * @version $Revision: 1.23 $
     6 * @version $Revision: 1.25 $
    77 * @package Log
    88 */
     
    1414 *
    1515 * @author  Chuck Hagenbuch <chuck@horde.org>
     16 * @author  Jon Parise <jon@php.net>
    1617 * @since   Horde 1.3
    1718 * @since   Log 1.0
     
    2324{
    2425    /**
    25     * Integer holding the log facility to use.
    26     * @var string
    27     * @access private
    28     */
     26     * Integer holding the log facility to use.
     27     * @var integer
     28     * @access private
     29     */
    2930    var $_name = LOG_SYSLOG;
     31
     32    /**
     33     * Should we inherit the current syslog connection for this process, or
     34     * should we call openlog() to start a new syslog connection?
     35     * @var boolean
     36     * @access private
     37     */
     38    var $_inherit = false;
    3039
    3140    /**
     
    4655        }
    4756
     57        if (isset($conf['inherit'])) {
     58            $this->_inherit = $conf['inherit'];
     59            $this->_opened = $this->_inherit;
     60        }
     61
    4862        $this->_id = md5(microtime());
    4963        $this->_name = $name;
     
    6074    {
    6175        if (!$this->_opened) {
    62             openlog($this->_ident, LOG_PID, $this->_name);
    63             $this->_opened = true;
     76            $this->_opened = openlog($this->_ident, LOG_PID, $this->_name);
    6477        }
    6578
     
    7386    function close()
    7487    {
    75         if ($this->_opened) {
     88        if ($this->_opened && !$this->_inherit) {
    7689            closelog();
    7790            $this->_opened = false;
    7891        }
    7992
    80         return ($this->_opened === false);
     93        return true;
    8194    }
    8295
     
    114127        $message = $this->_extractMessage($message);
    115128
    116         if (!syslog($this->_toSyslog($priority), $message)) {
     129        /* Build a syslog priority value based on our current configuration. */
     130        $priority = $this->_toSyslog($priority);
     131        if ($this->_inherit) {
     132            $priority |= $this->_name;
     133        }
     134
     135        if (!syslog($priority, $message)) {
    117136            return false;
    118137        }
Note: See TracChangeset for help on using the changeset viewer.