/** * @param LogRecord $logRecord * @return string */ public function format($logRecord) { $time = $logRecord->getTime(); $result = $time->format('Y-m-d H:i:s') . ' [' . LogLevel::getName($logRecord->getLevel()) . '] ' . getmypid(); $message = (string) $logRecord->getMessage(); if ($message !== '') { $result .= ' | ' . str_replace("\n", "\n ", $message); } return $result . PHP_EOL; }
/** * Called upon to store (INSERT) a log record into the database. * * Normally called upon by the <samp>filter</samp> method after * figuring out a record should be logged. * * @param LogRecord * @param string A preformatted message, compiled by the <samp>filter</samp> * method, containing <samp>$record->getMessage()</samp> and/or * <samp>ABException::format($record->getThrown())</samp> * @return void * @throws SQLiteException */ public function insertRecord(LogRecord $rec, $formattedMessage) { # compile final sql $sql = $this->insertSQL; foreach ($this->parameters['db.columns'] as $col) { if ($col == 'time') { $sql .= $rec->getTime(); } elseif ($col == 'level') { $sql .= $rec->getLevel(); } elseif ($col == 'prefix') { $sql .= "'" . sqlite_escape_string($rec->getPrefix()) . "'"; } elseif ($col == 'message') { $sql .= "'" . sqlite_escape_string($formattedMessage) . "'"; } elseif ($col == 'cwd') { $sql .= "'" . sqlite_escape_string(getcwd()) . "'"; } else { continue; } $sql .= ','; } $sql = trim($sql, ',') . ');'; $this->run($sql); }