sThread
[ class tree: sThread ] [ index: sThread ] [ all elements ]

Source for file Log.php

Documentation is available at Log.php

  1. <?php
  2. /**
  3.  * Logging Class of Single Thread Monitoring<br>
  4.  * File: sThread/Log.php
  5.  *
  6.  * @category    Network
  7.  * @package     sThread
  8.  * @subpackage  sThread_CORE
  9.  * @author      JoungKyun.Kim <http://oops.org>
  10.  * @copyright   (c) 2015 OOPS.ORG
  11.  * @license     BSD License
  12.  * @version     $Id$
  13.  * @link        http://pear.oops.org/package/sThread
  14.  * @filesource
  15.  */
  16.  
  17. /**
  18.  * sThread Log Class
  19.  *
  20.  * @category    Network
  21.  * @package     sThread
  22.  * @subpackage  sThread_CORE
  23.  * @author      JoungKyun.Kim <http://oops.org>
  24.  * @copyright   (c) 2015 OOPS.ORG
  25.  * @license     BSD License
  26.  * @link        http://pear.oops.org/package/sThread
  27.  */
  28. Class sThread_Log {
  29.     // {{{ properties
  30.     /**
  31.      * Log 파일 이름
  32.      * @access public
  33.      * @var    string 
  34.      */
  35.     static public $fname;
  36.     /**
  37.      * Log 파일 postfix
  38.      *
  39.      * @access public
  40.      * @var    stirng 
  41.      */
  42.     static public $format = 'Ymd';
  43.     /**
  44.      * 로그 저장 동작 여부
  45.      * <ul>
  46.      *     <li>0  -> 실패한 로그만 저장</li>
  47.      *     <li>1  -> 모든 로그 저장</li>
  48.      *     <li>-1 -> 로그 저장 안함</li>
  49.      * </ul>
  50.      *
  51.      * @access public
  52.      * @var    int 
  53.      */
  54.     static public $type = 0;
  55.     // }}}
  56.  
  57.     // {{{ (void) sThread_Log::save ($key, $recv)
  58.     /**
  59.      * 로그를 파일에 저장
  60.      *
  61.      * @access public
  62.      * @return void 
  63.      * @param  int    세션 키
  64.      * @param  string 로그 내용
  65.      */
  66.     static function save ($key$recv{
  67.         $res &Vari::$res->status[$key];
  68.  
  69.         // no logging
  70.         if self::$type )
  71.             return;
  72.  
  73.         if self::$type != && $res[1=== true )
  74.             return;
  75.  
  76.         if trim (self::$fname) )
  77.             return;
  78.  
  79.         $format date ('Ym');
  80.         $logdate date ('Ymd H:i:s');
  81.  
  82.         $logfile self::$fname '.' $format;
  83.  
  84.         $logdir dirname ($logfile);
  85.         if is_dir ($logdir|| is_writeable ($logfile) )
  86.             ePrint::dPrintf (Vari::DEBUG1"Error: Can't write %n"$logfile);
  87.  
  88.         $log sprintf ("[%s] %s %s\n"$logdate$res[0]$res[2]);
  89.         file_put_contents ($logfile$logFILE_APPEND);
  90.  
  91.         if $res[1=== false && $recv {
  92.             ob_start ();
  93.             ePrint::echoi ($recv4);
  94.             $err ob_get_contents ();
  95.             ob_end_clean ();
  96.             file_put_contents ($logfile$errFILE_APPEND);
  97.         }
  98.     }
  99.     // }}}
  100. }
  101. ?>

Documentation generated on Fri, 30 Aug 2024 06:10:48 +0900 by phpDocumentor 1.4.4