You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							73 lines
						
					
					
						
							1.8 KiB
						
					
					
				
			
		
		
	
	
							73 lines
						
					
					
						
							1.8 KiB
						
					
					
				<?php | 
						|
use yii\helpers\Html; | 
						|
use yii\grid\GridView; | 
						|
use yii\data\ArrayDataProvider; | 
						|
use yii\log\Logger; | 
						|
?> | 
						|
<h1>Log Messages</h1> | 
						|
<?php | 
						|
 | 
						|
echo GridView::widget([ | 
						|
	'dataProvider' => $dataProvider, | 
						|
	'id' => 'log-panel-detailed-grid', | 
						|
	'options' => ['class' => 'detail-grid-view'], | 
						|
	'filterModel' => $searchModel, | 
						|
	'filterUrl' => $panel->getUrl(), | 
						|
	'rowOptions' => function ($model, $key, $index, $grid) { | 
						|
		switch($model['level']) { | 
						|
			case Logger::LEVEL_ERROR : return ['class' => 'danger']; | 
						|
			case Logger::LEVEL_WARNING : return ['class' => 'warning']; | 
						|
			case Logger::LEVEL_INFO : return ['class' => 'success']; | 
						|
			default: return []; | 
						|
		} | 
						|
	}, | 
						|
	'columns' => [ | 
						|
		['class' => 'yii\grid\SerialColumn'], | 
						|
		[ | 
						|
			'attribute' => 'time', | 
						|
			'value' => function ($data) { | 
						|
				$timeInSeconds = $data['time'] / 1000; | 
						|
				$millisecondsDiff = (int)(($timeInSeconds - (int)$timeInSeconds) * 1000); | 
						|
				return date('H:i:s.',$timeInSeconds) . sprintf('%03d',$millisecondsDiff); | 
						|
			}, | 
						|
			'headerOptions' => [ | 
						|
				'class' => 'sort-numerical' | 
						|
			] | 
						|
		], | 
						|
		[ | 
						|
			'attribute' => 'level', | 
						|
			'value' => function ($data) { | 
						|
				return Logger::getLevelName($data['level']); | 
						|
			}, | 
						|
			'filter' => [ | 
						|
				Logger::LEVEL_TRACE => ' Trace ', | 
						|
				Logger::LEVEL_INFO => ' Info ', | 
						|
				Logger::LEVEL_WARNING => ' Warning ', | 
						|
				Logger::LEVEL_ERROR => ' Error ', | 
						|
			], | 
						|
		], | 
						|
		'category', | 
						|
		[ | 
						|
			'attribute' => 'message', | 
						|
			'value' => function ($data) { | 
						|
				$message = nl2br(Html::encode($data['message'])); | 
						|
 | 
						|
				if (!empty($data['trace'])) { | 
						|
					$message .= Html::ul($data['trace'], [ | 
						|
						'class' => 'trace', | 
						|
						'item' => function ($trace) { | 
						|
							return "<li>{$trace['file']} ({$trace['line']})</li>"; | 
						|
						} | 
						|
					]); | 
						|
				}; | 
						|
 | 
						|
				return $message; | 
						|
			}, | 
						|
			'format' => 'html', | 
						|
			'options' => [ | 
						|
				'width' => '50%', | 
						|
			], | 
						|
		], | 
						|
	], | 
						|
]); | 
						|
?>
 |