| Server IP : 87.229.120.60 / Your IP : 216.73.216.245 Web Server : Apache System : Linux outside 5.4.8_Algonet_ZeroMAC_0.9.4.8 #6 SMP Mon Feb 3 20:36:07 CET 2020 x86_64 User : server ( 1002) PHP Version : 8.3.20 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/faktorteam/www/wp-content/plugins/wp-rocket/inc/classes/logger/ |
Upload File : |
<?php
namespace WP_Rocket\Logger;
use Monolog\Formatter\HtmlFormatter;
defined( 'ABSPATH' ) || exit;
/**
* Class used to format log records as HTML.
*
* @since 3.2
* @author Grégory Viguier
*/
class HTML_Formatter extends HtmlFormatter {
/**
* Formats a log record.
* Compared to the parent method, it removes the "channel" row.
*
* @since 3.2
* @access public
* @author Grégory Viguier
*
* @param array $record A record to format.
* @return mixed The formatted record.
*/
public function format( array $record ) {
$output = $this->addTitle( $record['level_name'], $record['level'] );
$output .= '<table cellspacing="1" width="100%" class="monolog-output">';
$output .= $this->addRow( 'Message', (string) $record['message'] );
$output .= $this->addRow( 'Time', $record['datetime']->format( $this->dateFormat ) ); // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
if ( $record['context'] ) {
$embedded_table = '<table cellspacing="1" width="100%">';
foreach ( $record['context'] as $key => $value ) {
$embedded_table .= $this->addRow( $key, $this->convertToString( $value ) );
}
$embedded_table .= '</table>';
$output .= $this->addRow( 'Context', $embedded_table, false );
}
if ( $record['extra'] ) {
$embedded_table = '<table cellspacing="1" width="100%">';
foreach ( $record['extra'] as $key => $value ) {
$embedded_table .= $this->addRow( $key, $this->convertToString( $value ) );
}
$embedded_table .= '</table>';
$output .= $this->addRow( 'Extra', $embedded_table, false );
}
return $output . '</table>';
}
}