通用的日志记录器(PHP)
2020-11-15 03:07
标签:com http blog style class div img code log tar c 一个通用的日志记录器 通用的日志记录器(PHP),布布扣,bubuko.com 通用的日志记录器(PHP) 标签:com http blog style class div img code log tar c 原文地址:http://www.cnblogs.com/t-witness/p/3695870.html 1 php
2 class Log4p{
3
4 const LOG_PATH = "/data/logs/mobact2rd/drawcard";
5
6 static function writeLog($str, $filename=‘debug‘, $fileCutByDate = true, $dirCutByDate = true) {
7 if (empty($str)) return;
8 $dir = ‘‘;
9
10 if ( $dirCutByDate) {
11 $dir = self::LOG_PATH . ‘/‘ . date("Ymd");
12 } else {
13 $dir = self::LOG_PATH;
14 }
15
16 if (!file_exists($dir)) {
17 @mkdir($dir, 0775, true);
18 }
19
20 $file = ‘‘;
21
22 if ($fileCutByDate) {
23 $file = $dir . ‘/‘ . $filename . ‘_‘ . date("Y-m-d") . ‘.log‘;
24 } else {
25 $file = $dir . ‘/‘ . $filename . ‘.log‘;
26 }
27
28
29 $f = fopen($file, ‘a‘);
30 if ($f) {
31 fwrite($f, $str . "\n");
32 fclose($f);
33 }
34 }
35
36
37
38 public static function getLogRootPath() {
39 return self::LOG_PATH;
40 }
41
42 // remote 日志
43 public static function r($uid, $type, $message) {
44 $log = self::buildLog($uid, $type, $message);
45 self::writeLog($log, ‘remote‘);
46 }
47
48 public static function f($uid, $type, $message) {
49 $log = self::buildLog($uid, $type, $message);
50 self::writeLog($log, ‘fetal‘);
51 }
52
53 public static function e($uid, $type, $message) {
54 $log = self::buildLog($uid, $type, $message);
55 self::writeLog($log, ‘error‘);
56 }
57
58 public static function i($uid, $type, $message) {
59 $log = self::buildLog($uid, $type, $message);
60 self::writeLog($log, ‘info‘);
61 }
62
63 public static function w($uid, $type, $message) {
64 $log = self::buildLog($uid, $type, $message);
65 self::writeLog($log, ‘warn‘);
66 }
67
68 public static function d($log = ‘‘) {
69 self::writeLog($log, ‘debug‘);
70 }
71
72 public static function m($uid, $type, $message) {
73 $log = self::buildLog($uid, $type, $message);
74 self::writeLog($log, ‘monitor‘);
75 }
76
77 public static function winner($uid, $type, $message) {
78 $log = self::buildLog($uid, $type, $message);
79 self::writeLog($log, ‘winner‘, false, false);
80 }
81
82 private static function buildLog($uid, $type, $message) {
83 $_log = array(
84 date("Y-m-d H:i:s"),
85 Utils::getRealIp(),
86 $uid,
87 $type,
88 $message,
89 );
90 return implode("\t", $_log);
91 }
92
93 }
94 ?>
上一篇:CSS语法与用法小字典
下一篇:netty 学习笔记