rss-bridge/lib/Debug.php

32 lines
980 B
PHP

<?php
class Debug
{
/**
* Convenience function for Configuration::getConfig('system', 'enable_debug_mode')
*/
public static function isEnabled(): bool
{
$ip = $_SERVER['REMOTE_ADDR'] ?? 'x.y.z.1';
$enableDebugMode = Configuration::getConfig('system', 'enable_debug_mode');
$debugModeWhitelist = Configuration::getConfig('system', 'debug_mode_whitelist') ?: [];
if ($enableDebugMode && ($debugModeWhitelist === [] || in_array($ip, $debugModeWhitelist))) {
return true;
}
return false;
}
public static function log($message)
{
$e = new \Exception();
$trace = trace_from_exception($e);
// Drop the current frame
array_pop($trace);
$lastFrame = $trace[array_key_last($trace)];
$text = sprintf('%s(%s): %s', $lastFrame['file'], $lastFrame['line'], $message);
$logger = RssBridge::getLogger();
$logger->debug($text);
}
}