Merge pull request #3414 from beardyunixer/dlogger

Dlogger
This commit is contained in:
Hypolite Petovan 2017-04-30 08:10:07 -04:00 committed by GitHub
commit b6945a46b6

View file

@ -753,6 +753,72 @@ function logger($msg, $level = 0) {
$a->save_timestamp($stamp1, "file"); $a->save_timestamp($stamp1, "file");
}} }}
/**
* @brief An alternative logger for development.
* Works largely as logger() but allows developers
* to isolate particular elements they are targetting
* personally without background noise
*
* log levels:
* LOGGER_NORMAL (default)
* LOGGER_TRACE
* LOGGER_DEBUG
* LOGGER_DATA
* LOGGER_ALL
*
* @global App $a
* @global dba $db
* @global array $LOGGER_LEVELS
* @param string $msg
* @param int $level
*/
function dlogger($msg, $level = 0) {
$a = get_app();
global $db;
// turn off logger in install mode
if (
$a->module == 'install'
|| ! ($db && $db->connected)
) {
return;
}
$logfile = get_config('system','dlogfile');
if (! $logfile) {
return;
}
if (count($LOGGER_LEVELS) == 0) {
foreach (get_defined_constants() as $k => $v) {
if (substr($k, 0, 7) == "LOGGER_") {
$LOGGER_LEVELS[$v] = substr($k, 7, 7);
}
}
}
$process_id = session_id();
if ($process_id == '') {
$process_id = get_app()->process_id;
}
$callers = debug_backtrace();
$logline = sprintf("%s@\t%s:\t%s:\t%s\t%s\t%s\n",
datetime_convert(),
$process_id,
basename($callers[0]['file']),
$callers[0]['line'],
$callers[1]['function'],
$msg
);
$stamp1 = microtime(true);
@file_put_contents($logfile, $logline, FILE_APPEND);
$a->save_timestamp($stamp1, "file");
}
if(! function_exists('activity_match')) { if(! function_exists('activity_match')) {
/** /**