Skip to content
Snippets Groups Projects
Commit 6ffb1b5c authored by Dominik Hebeler's avatar Dominik Hebeler
Browse files

Interface zum auslesen der Statistik hinzugefügt

parent 178e542c
No related branches found
No related tags found
2 merge requests!414Development,!413Resolve "Log erweitern"
...@@ -96,4 +96,37 @@ class AdminInterface extends Controller ...@@ -96,4 +96,37 @@ class AdminInterface extends Controller
->with('title', 'Wer sucht was? - MetaGer') ->with('title', 'Wer sucht was? - MetaGer')
->with('q', $q); ->with('q', $q);
} }
public function engines()
{
# Wir laden den Inhalt der Log Datei und übergeben ihn an den view
$file = "/var/log/metager/engine.log";
if (file_exists($file) && is_readable($file)) {
$engineStats = file_get_contents($file);
# Daten vom JSON Format dekodieren
$engineStats = json_decode($engineStats, true);
# Eine Sortierung wäre nicht das verkehrteste
uasort($engineStats["recent"], function ($a, $b) {
if ($a["requests"] == $b["requests"]) {
return 0;
}
return ($a["requests"] < $b["requests"]) ? 1 : -1;
});
uasort($engineStats["overall"], function ($a, $b) {
if ($a["requests"] == $b["requests"]) {
return 0;
}
return ($a["requests"] < $b["requests"]) ? 1 : -1;
});
return view('admin.engines')
->with('engineStats', $engineStats)
->with('title', "Suchmaschinenstatus - MetaGer");
} else {
return redirect(url('admin'));
}
}
} }
...@@ -144,6 +144,7 @@ Route::group( ...@@ -144,6 +144,7 @@ Route::group(
Route::get('admin', 'AdminInterface@index'); Route::get('admin', 'AdminInterface@index');
Route::get('admin/count', 'AdminInterface@count'); Route::get('admin/count', 'AdminInterface@count');
Route::get('admin/check', 'AdminInterface@check'); Route::get('admin/check', 'AdminInterface@check');
Route::get('admin/engines', 'AdminInterface@engines');
Route::get('settings', 'StartpageController@loadSettings'); Route::get('settings', 'StartpageController@loadSettings');
......
@extends('layouts.subPages')
@section('title', $title )
@section('content')
<h1>Suchmaschinenübersicht</h1>
<p>Diese Übersicht gibt Aufschluss darüber, welche Suchmaschinen wie oft abgefragt wurden und zusätzlich wie oft diese innerhalb unseres Timeouts geantwortet haben</p>
<table class="table table-bordered">
<caption>Daten der letzten 10 Minuten</caption>
<thead>
<tr>
<th>Name</th>
<th>Anzahl der gesamten Abfragen</th>
<th>Davon tatsächlich beantwortet</th>
<th>Prozent</th>
</tr>
</thead>
<tbody>
@foreach($engineStats["recent"] as $name => $values)
@if($values["requests"] > 0)
<tr @if($values["requests"] === $values["answered"]) class="success" @else class="danger" @endif>
<td>{{$name}}</td>
<td>{{$values["requests"]}}</td>
<td>{{$values["answered"]}}</td>
<td>{{ floor(($values["answered"] / $values["requests"]) * 100) }}%</td>
</tr>
@endif
@endforeach
</tbody>
</table>
<table class="table table-bordered">
<caption>Daten insgesamt</caption>
<thead>
<tr>
<th>Name</th>
<th>Anzahl der gesamten Abfragen</th>
<th>Davon tatsächlich beantwortet</th>
<th>Prozent</th>
</tr>
</thead>
<tbody>
@foreach($engineStats["overall"] as $name => $values)
@if($values["requests"] > 0)
<tr @if($values["requests"] === $values["answered"]) class="success" @else class="danger" @endif>
<td>{{$name}}</td>
<td>{{$values["requests"]}}</td>
<td>{{$values["answered"]}}</td>
<td>{{ floor(($values["answered"] / $values["requests"]) * 100) }}%</td>
</tr>
@endif
@endforeach
</tbody>
</table>
@endsection
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment