/packages/Logger/DBLogger/Managers/DBLogger.class.php
PHP | 45 lines | 40 code | 5 blank | 0 comment | 1 complexity | ba4e0f1e8828cd1dc98909a9035d2e26 MD5 | raw file
1<?php
2class DBLogger extends Logger{
3
4 const TBL_REQUEST_LOG = 'log_requests';
5 const TBL_MIXED_LOG = 'log_mixed';
6
7 public function log($name, $value){
8 static::logCustom($name, $value);
9 }
10
11 public static function logRequest($instanceName = null){
12 $sql = MySqlDbManager::getQueryObject($instanceName);
13 $qb = new QueryBuilder();
14 $qb->insert(Tbl::get('TBL_REQUEST_LOG'))
15 ->values(array(
16 "session_id" => session_id(),
17 "get" => serialize($_GET),
18 "post" => serialize($_POST),
19 "server" => serialize($_SERVER),
20 "cookies" => serialize($_COOKIE),
21 "session" => serialize($_SESSION),
22 "response" => ob_get_contents()
23 )
24 );
25 $sql->exec($qb->getSQL());
26
27 }
28
29 public static function logCustom($name, $value){
30 $remoteIP="";
31 if(isset($_SERVER['REMOTE_ADDR'])){
32 $remoteIP=$_SERVER['REMOTE_ADDR'];
33 }
34 $qb = new QueryBuilder();
35 $qb->insert(Tbl::get('TBL_MIXED_LOG'))
36 ->values(array(
37 "session_id" => session_id(),
38 "name" => $name,
39 "value" => $value,
40 "ip" => $remoteIP
41 )
42 );
43 Reg::get('sql')->exec($qb->getSQL());
44 }
45}