File: //proc/self/cwd/wp-content/plugins/pixel-caffeine/includes/admin/class-aepc-admin-logger.php
<?php
/**
* Register the logs for errors and warnings
*
* @package Pixel Caffeine
*/
use PixelCaffeine\Logs\Entity\Log;
use PixelCaffeine\Logs\LogRepository;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Main logger class
*
* @class AEPC_Admin_Logger
*/
class AEPC_Admin_Logger {
/**
* Setup the logger
*
* @return void
*/
public function setup() {
}
/**
* Log the message
*
* The message MAY contain placeholders in the form: {foo} where foo
* will be replaced by the context data in key "foo".
*
* The context array can contain arbitrary data. The only assumption that
* can be made by implementors is that if an Exception instance is given
* to produce a stack trace, it MUST be in a key named "exception".
*
* @param string $message The message.
* @param array $context The context of the error.
*
* @throws Exception Throws a general error when there is a problem during the log saving.
*
* @return void
*/
public function log( $message, array $context = array() ) {
require_once ABSPATH . 'wp-admin/includes/plugin.php';
$exception = $context['exception'];
unset( $context['exception'] );
$log = new Log(
$exception,
$message,
new \DateTime(),
$context
);
$repository = new LogRepository();
$repository->save( $log );
}
}