= $threshold)) { print date("c")." $section: $message\n"; } if($flash === true) { flash_message($message); } else if(is_string($flash)) { flash_message($flash); } } // More shorthand ways of logging /** * @param string $section * @param string $message * @param bool|string $flash * @param array $args */ function log_debug( string $section, string $message, $flash=false, $args=array()) {log_msg($section, SCORE_LOG_DEBUG, $message, $flash, $args);} /** * @param string $section * @param string $message * @param bool|string $flash * @param array $args */ function log_info( string $section, string $message, $flash=false, $args=array()) {log_msg($section, SCORE_LOG_INFO, $message, $flash, $args);} /** * @param string $section * @param string $message * @param bool|string $flash * @param array $args */ function log_warning( string $section, string $message, $flash=false, $args=array()) {log_msg($section, SCORE_LOG_WARNING, $message, $flash, $args);} /** * @param string $section * @param string $message * @param bool|string $flash * @param array $args */ function log_error( string $section, string $message, $flash=false, $args=array()) {log_msg($section, SCORE_LOG_ERROR, $message, $flash, $args);} /** * @param string $section * @param string $message * @param bool|string $flash * @param array $args */ function log_critical(string $section, string $message, $flash=false, $args=array()) {log_msg($section, SCORE_LOG_CRITICAL, $message, $flash, $args);} /** * Get a unique ID for this request, useful for grouping log messages. * * @return string */ function get_request_id(): string { static $request_id = null; if(!$request_id) { // not completely trustworthy, as a user can spoof this if(@$_SERVER['HTTP_X_VARNISH']) { $request_id = $_SERVER['HTTP_X_VARNISH']; } else { $request_id = "P" . uniqid(); } } return $request_id; }