Example #1
0
 /**
  * {@inheritdoc}
  */
 public function handle(array $record)
 {
     $message = Logger::interpolate($record['message'], $record['context']);
     if ($record['level'] != LogLevel::INFO) {
         $message = '[' . $record['level'] . '] ' . $message;
     }
     if (Logger::compare($record['level'], LogLevel::ERROR) >= 0) {
         $this->shell->error($message);
     } else {
         $this->shell->put($message);
     }
 }
Example #2
0
 /**
  * Format a log message for a log file.
  * @param array $record Log message array.
  * @return string Formatted log message followed by a line break.
  */
 public static function format(array $record)
 {
     $seconds = (int) $record['time'];
     $millis = floor(($record['time'] - $seconds) * 1000);
     $timestamp = date('Y-m-d H:i:s', $seconds);
     $timestamp .= sprintf('.%03d ', $millis);
     $timestamp .= date('P');
     $level = '[' . $record['level'] . ']';
     $message = '';
     $message .= Logger::interpolate($record['message'], $record['context']);
     if (isset($record['context']['file'])) {
         $message .= ' in ' . $record['context']['file'];
     }
     if (isset($record['context']['line'])) {
         $message .= ' on line ' . $record['context']['line'];
     }
     return $timestamp . ' ' . $level . ' ' . $message . PHP_EOL;
 }
Example #3
0
</th>
<th><?php 
    echo tr('File');
    ?>
</th>
<th><?php 
    echo tr('Time');
    ?>
</th>
</tr>
</thead>
<tbody>
<?php 
    foreach ($log as $record) {
        $context = $record['context'];
        $message = \Jivoo\Core\Log\Logger::interpolate($record['message'], $context);
        ?>
<tr>
<td>
[<?php 
        echo $record['level'];
        ?>
]
<?php 
        echo h($message);
        ?>
</td>
<td>
<span title="<?php 
        echo isset($context['file']) ? $context['file'] : '';
        ?>
Example #4
0
<?php

// Example: Using Jivoo database system outside of Jivoo applications.
use Jivoo\Core\Store\Document;
use Jivoo\Databases\DatabaseSchemaBuilder;
use Jivoo\Databases\DynamicSchema;
use Jivoo\Databases\Loader;
use Jivoo\Core\Log\Logger;
use Jivoo\Core\Log\CallbackHandler;
// Include Jivoo by either using composer or including the bootstrap script:
require '../../src/bootstrap.php';
// Initialize database loader with connection settings for "default" database:
$loader = new Loader(new Document(array('default' => array('driver' => 'PdoMysql', 'server' => 'localhost', 'username' => 'jivoo', 'database' => 'jivoo'))));
// Log database queries to output
$logger = new Logger();
$logger->addHandler(new CallbackHandler(function (array $record) {
    if (isset($record['context']['query'])) {
        echo 'query: ' . $record['context']['query'] . PHP_EOL;
    }
}));
$loader->setLogger($logger);
// Connect to "default":
$db = $loader->connect('default');
echo '<pre>';
// Get data for root user:
print_r($db->User->where('username = %s', 'root')->first()->getData());
// List names of users created after 2015-01-01
$users = $db->User->where('created > %d', '2015-01-01')->orderBy('created');
foreach ($users as $user) {
    echo h($user->username) . PHP_EOL;
}
Example #5
0
 /**
  * {@inheritdoc}
  */
 public function accepts($level)
 {
     return Logger::compare($level, $this->level) >= 0;
 }