@extends('layouts.user_type.auth') @section('systemHealth') @php $tone = ['ok' => 'success', 'warn' => 'warning', 'fail' => 'danger', 'info' => 'info']; $icon = ['ok' => 'fa-circle-check', 'warn' => 'fa-triangle-exclamation', 'fail' => 'fa-circle-xmark', 'info' => 'fa-circle-info']; $groupIcon = ['Backups' => 'fa-database', 'Infrastructure' => 'fa-server', 'Security' => 'fa-shield-halved', 'Activity' => 'fa-user-clock']; $headline = ['ok' => 'All systems healthy', 'warn' => 'Healthy, with a few warnings', 'fail' => 'Action needed']; @endphp
@include('components.alert') {{-- overall --}}
{{ $summary['score'] }}%
System health

{{ $headline[$summary['overall']] }}

Checked {{ $summary['checked_at']->format('d M Y, H:i:s') }} · backups, databases, disk, queue, cron, logs and security settings.

{{ $summary['ok'] }} passed {{ $summary['warn'] }} warnings {{ $summary['fail'] }} failed
Run checks again
@foreach($groups as $group => $checks) @php $bad = collect($checks)->whereIn('status', ['fail'])->count(); $warn = collect($checks)->where('status', 'warn')->count(); @endphp
{{ $group }}

{{ count($checks) }} checks

{{ $bad ? $bad.' failed' : ($warn ? $warn.' warning'.($warn>1?'s':'') : 'All good') }}
    @foreach($checks as $c)
  • {{ $c['label'] }}
    @if($c['hint'])
    {{ $c['hint'] }}
    @endif
    {{ $c['value'] }}
  • @endforeach
@endforeach
Uptime monitoring
Point Google Cloud Monitoring (uptime check) at {{ url('/api/health') }} — it returns 200 when the app and database are up, 503 otherwise, and exposes no private details.
@if(hasPermission('backupLog', 'view')) Open Backups @endif
@endsection