@extends('layouts.admin') @section('content')

Monitoring Dashboard

{{ $monitors->count() }}
Total Monitors
{{ $monitors->whereNotIn('monitoring_type', ['email_health'])->count() }}
Website Monitors
{{ $monitors->where('monitoring_type', 'email_health')->count() }}
Domain Monitors
@php $websiteMonitorIds = $monitors->whereNotIn('monitoring_type', ['email_health'])->pluck('id'); $averageResponse = $monitors->whereIn('id', $websiteMonitorIds) ->flatMap(function ($monitor) { return $monitor->websiteStats->last() ? [$monitor->websiteStats->last()->response_time] : []; })->avg(); echo $averageResponse ? number_format($averageResponse, 2) : 'N/A'; @endphp
Average Response Time (s)
@foreach ($monitors as $monitor) @php $isEmailHealth = $monitor->monitoring_type === 'email_health'; $isSSLMonitoring = $monitor->monitoring_type === 'ssl'; $isKeywordMonitoring = $monitor->monitoring_type === 'keyword'; $isElementMonitoring = $monitor->monitoring_type === 'element'; $isServerMonitoring = $monitor->monitoring_type === 'server'; $isFullPage = $monitor->monitoring_type === 'full_page'; $latestResponse = $monitor->websiteStats->last(); $statusClass = $latestResponse && $latestResponse->response_time < 3 ? 'status-good' : 'status-bad'; @endphp @endforeach
Website URL/Domain Type Actions
{{ $monitor->name }}
@if($isEmailHealth) {{ $monitor->domain_to_monitor }} @else {{ parse_url($monitor->url, PHP_URL_HOST) }} @endif {{ match ($monitor->monitoring_type) { 'email_health' => 'Email Health', 'ssl' => 'SSL', 'keyword' => 'Keyword', 'element' => 'Element', 'server' => 'Server', default => 'Full Page' } }}
@if ($isServerMonitoring) @endif @if (auth()->user()->isAdmin()) @endif
@endsection