/packages/Logger/DBLogger/Managers/DBLogger.class.php
https://bitbucket.org/alexamiryan/stingle · PHP · 45 lines · 40 code · 5 blank · 0 comment · 1 complexity · ba4e0f1e8828cd1dc98909a9035d2e26 MD5 · raw file
- <?php
- class DBLogger extends Logger{
- const TBL_REQUEST_LOG = 'log_requests';
- const TBL_MIXED_LOG = 'log_mixed';
- public function log($name, $value){
- static::logCustom($name, $value);
- }
-
- public static function logRequest($instanceName = null){
- $sql = MySqlDbManager::getQueryObject($instanceName);
- $qb = new QueryBuilder();
- $qb->insert(Tbl::get('TBL_REQUEST_LOG'))
- ->values(array(
- "session_id" => session_id(),
- "get" => serialize($_GET),
- "post" => serialize($_POST),
- "server" => serialize($_SERVER),
- "cookies" => serialize($_COOKIE),
- "session" => serialize($_SESSION),
- "response" => ob_get_contents()
- )
- );
- $sql->exec($qb->getSQL());
-
- }
-
- public static function logCustom($name, $value){
- $remoteIP="";
- if(isset($_SERVER['REMOTE_ADDR'])){
- $remoteIP=$_SERVER['REMOTE_ADDR'];
- }
- $qb = new QueryBuilder();
- $qb->insert(Tbl::get('TBL_MIXED_LOG'))
- ->values(array(
- "session_id" => session_id(),
- "name" => $name,
- "value" => $value,
- "ip" => $remoteIP
- )
- );
- Reg::get('sql')->exec($qb->getSQL());
- }
- }