Laravel 11, Vuexy Admin 10.3, by admin@koneko.mx
This commit is contained in:
204
modules/Admin/Resources/views/livewire/cache/cache-functions.blade.php
vendored
Normal file
204
modules/Admin/Resources/views/livewire/cache/cache-functions.blade.php
vendored
Normal file
@ -0,0 +1,204 @@
|
||||
<div>
|
||||
<div id="cache-functions-card">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Resumen de Caché y Funcionalidades</h5>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Tipo</th>
|
||||
<th>Estado</th>
|
||||
<th>Detalles</th>
|
||||
<th>Acción</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{-- Caché General --}}
|
||||
<tr>
|
||||
<td><strong>Caché general</strong></td>
|
||||
<td class="text-center">
|
||||
<span class="{{ is_numeric($cacheCounts['general']) && $cacheCounts['general'] > 0 ? 'text-success' : 'text-danger' }}">
|
||||
{{ is_numeric($cacheCounts['general']) ? $cacheCounts['general'] : 'Error' }}
|
||||
</span>
|
||||
</td>
|
||||
<td>Elementos almacenados</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-primary btn-sm my-2 mr-2"
|
||||
wire:click="clearLaravelCache"
|
||||
{{ !is_numeric($cacheCounts['general']) || !$cacheCounts['general'] ? 'disabled' : '' }}
|
||||
data-loading-text="Eliminando caché...">
|
||||
Elimina caché de aplicación
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Configuración --}}
|
||||
<tr>
|
||||
<td><strong>Configuración</strong></td>
|
||||
<td class="text-center">
|
||||
<span class="{{ $cacheCounts['config'] ? 'text-success' : 'text-danger' }}">
|
||||
{{ $cacheCounts['config'] ? 'Habilitada' : 'No habilitada' }}
|
||||
</span>
|
||||
</td>
|
||||
<td>{{ $cacheCounts['config'] ? 'Caché de configuración activa' : 'No se encontró caché de configuración' }}</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-secondary btn-sm my-2 mr-2"
|
||||
wire:click="clearConfigCache"
|
||||
{{ !$cacheCounts['config'] ? 'disabled' : '' }}
|
||||
data-loading-text="Eliminando caché...">
|
||||
Eliminar caché de configuración
|
||||
</button>
|
||||
<button
|
||||
class="btn btn-success btn-config-cache btn-sm my-2 mr-2"
|
||||
data-loading-text="Generando caché...">
|
||||
Generar caché de configuración
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Rutas --}}
|
||||
<tr>
|
||||
<td><strong>Rutas</strong></td>
|
||||
<td class="text-center">
|
||||
<span class="{{ $cacheCounts['routes'] ? 'text-success' : 'text-danger' }}">
|
||||
{{ $cacheCounts['routes'] ? 'Habilitada' : 'No habilitada' }}
|
||||
</span>
|
||||
</td>
|
||||
<td>{{ $cacheCounts['routes'] ? 'Caché de rutas activa' : 'No se encontró caché de rutas' }}</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-secondary btn-sm my-2 mr-2"
|
||||
wire:click="clearRouteCache"
|
||||
{{ !$cacheCounts['routes'] ? 'disabled' : '' }}
|
||||
data-loading-text="Eliminando caché...">
|
||||
Eliminar caché de rutas
|
||||
</button>
|
||||
<button
|
||||
class="btn btn-success btn-cache-routes btn-sm my-2 mr-2"
|
||||
data-loading-text="Generando caché...">
|
||||
Generar caché de rutas
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Vistas --}}
|
||||
<tr>
|
||||
<td><strong>Vistas</strong></td>
|
||||
<td class="text-center">
|
||||
<span class="{{ $cacheCounts['views'] > 0 ? 'text-success' : 'text-danger' }}">
|
||||
{{ $cacheCounts['views'] }}
|
||||
</span>
|
||||
</td>
|
||||
<td>Vistas compiladas en el sistema</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-secondary btn-sm my-2 mr-2"
|
||||
wire:click="clearViewCache"
|
||||
{{ !$cacheCounts['views'] ? 'disabled' : '' }}
|
||||
data-loading-text="Eliminando caché...">
|
||||
Eliminar caché de vistas
|
||||
</button>
|
||||
<button
|
||||
class="btn btn-success btn-sm my-2 mr-2"
|
||||
wire:click="cacheViews"
|
||||
data-loading-text="Generando caché...">
|
||||
Generar caché de vistas
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Eventos --}}
|
||||
<tr>
|
||||
<td><strong>Eventos</strong></td>
|
||||
<td class="text-center">
|
||||
<span class="{{ $cacheCounts['events'] > 0 ? 'text-success' : 'text-danger' }}">
|
||||
{{ $cacheCounts['events'] ? 'Habilitada' : 'No habilitada' }}
|
||||
</span>
|
||||
</td>
|
||||
|
||||
<td>{{ $cacheCounts['events'] ? 'Caché de eventos activa' : 'No se encontró caché de eventos' }}</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-secondary btn-sm my-2 mr-2"
|
||||
wire:click="clearEventCache"
|
||||
{{ !$cacheCounts['events'] ? 'disabled' : '' }}
|
||||
data-loading-text="Eliminando caché...">
|
||||
Eliminar caché de eventos
|
||||
</button>
|
||||
<button class="btn btn-success btn-sm my-2 mr-2"
|
||||
wire:click="cacheEvents"
|
||||
data-loading-text="Generando caché...">
|
||||
Generar caché de eventos
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Optimización --}}
|
||||
<tr>
|
||||
<td><strong>Optimización</strong></td>
|
||||
<td class="text-center">N/A</td>
|
||||
<td>Eliminación de cacde de archivos optimizados, eventos, compilados, configuración, rutas y vistas.</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-secondary btn-sm my-2 mr-2"
|
||||
wire:click="optimizeClear"
|
||||
data-loading-text="Eliminando caché...">
|
||||
Elimina archivos optimizados
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Resets de Autenticación --}}
|
||||
<tr>
|
||||
<td><strong>Roles y permisos</strong></td>
|
||||
<td class="text-center">N/A</td>
|
||||
<td>Gestión de roles y permisos (Spatie Permission)</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-secondary btn-sm my-2 mr-2"
|
||||
wire:click="resetPermissionCache"
|
||||
data-loading-text="Eliminando caché...">
|
||||
Eliminar caché de permisos
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Tokens de restablecimiento --}}
|
||||
<tr>
|
||||
<td><strong>Tokens de restablecimiento</strong></td>
|
||||
<td class="text-center">N/A</td>
|
||||
<td>Eliminación de tokens de restablecimiento</td>
|
||||
<td>
|
||||
<button
|
||||
class="btn btn-secondary btn-sm my-2 mr-2"
|
||||
wire:click="clearResetTokens"
|
||||
data-loading-text="Eliminando caché...">
|
||||
Eliminar tokens de restablecimiento
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
{{-- Botones --}}
|
||||
<div class="row my-4">
|
||||
<div class="col-lg-12 text-end">
|
||||
<button
|
||||
class="btn btn-secondary btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
wire:click="reloadCacheStats"
|
||||
data-loading-text="Actualizando...">
|
||||
Actualizar
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
{{-- Notifications --}}
|
||||
<div class="notification-container" wire:ignore></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
105
modules/Admin/Resources/views/livewire/cache/cache-stats.blade.php
vendored
Normal file
105
modules/Admin/Resources/views/livewire/cache/cache-stats.blade.php
vendored
Normal file
@ -0,0 +1,105 @@
|
||||
<div>
|
||||
<div class="form-custom-listener" id="cache-stats-card">
|
||||
{{-- Form Card --}}
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Gestión de Caché</h5>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered table-sm">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>Driver</strong></td>
|
||||
<td>{{ $cacheConfig['cache']['default'] }}</td>
|
||||
</tr>
|
||||
@if(in_array($cacheConfig['cache']['default'], ['database', 'memcached', 'redis']))
|
||||
<tr>
|
||||
<td><strong>Versión</strong></td>
|
||||
<td>
|
||||
@if($cacheConfig['cache']['default'] == 'database')
|
||||
{{ $cacheConfig['driver'][$cacheConfig['database']['default']]['version'] }}
|
||||
@else
|
||||
{{ $cacheConfig['driver'][$cacheConfig['cache']['default']]['version'] }}
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Servidor</strong></td>
|
||||
<td>{{ $cacheConfig['cache']['host'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if(in_array($cacheConfig['cache']['default'], ['database', 'redis']))
|
||||
<tr>
|
||||
<td><strong>Base de datos</strong></td>
|
||||
<td>
|
||||
@if ($cacheConfig['cache']['default'] == 'database')
|
||||
{{ $cacheConfig['database']['connections'][$cacheConfig['database']['default']]['database'] }}
|
||||
@else
|
||||
{{ $cacheConfig['database']['redis']['cache']['database'] }}
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if(in_array($cacheConfig['cache']['default'], ['database', 'memcached', 'redis']))
|
||||
<tr>
|
||||
<td><strong>Prefijo</strong></td>
|
||||
<td>{{ $cacheConfig['cache']['prefix'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if($cacheConfig['cache']['default'] == 'file')
|
||||
<tr>
|
||||
<td><strong>Ubicación de la Caché</strong></td>
|
||||
<td>{{ $cacheConfig['cache']['stores']['file']['path'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if($cacheConfig['cache']['default'] == 'database')
|
||||
<tr>
|
||||
<td><strong>Tabla de Caché</strong></td>
|
||||
<td>{{ $cacheConfig['cache']['stores']['database']['table'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
<tr>
|
||||
<td><strong>Cantidad de Elementos</strong></td>
|
||||
<td>{{ $cacheStats['item_count'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Espacio Utilizado</strong></td>
|
||||
<td>{{ $cacheStats['memory_usage'] }}</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
{{-- Botones --}}
|
||||
<div class="row my-4">
|
||||
<div class="col-lg-12 text-end">
|
||||
@if($cacheConfig['cache']['default'] != 'memcached')
|
||||
<button
|
||||
type="button"
|
||||
wire:click="clearCache"
|
||||
class="btn btn-danger btn-clear-cache btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
data-loading-text="Eliminando Caché...">
|
||||
Eliminar Caché
|
||||
</button>
|
||||
@endif
|
||||
<button
|
||||
type="button"
|
||||
wire:click="reloadCacheStats"
|
||||
class="btn btn-secondary btn-reload-cache-stats btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
data-loading-text="Actualizando...">
|
||||
Actualizar
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
{{-- Notifications --}}
|
||||
<div class="notification-container" wire:ignore></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
121
modules/Admin/Resources/views/livewire/cache/memcached-stats.blade.php
vendored
Normal file
121
modules/Admin/Resources/views/livewire/cache/memcached-stats.blade.php
vendored
Normal file
@ -0,0 +1,121 @@
|
||||
<div>
|
||||
<div class="form-custom-listener" id="memcached-stats-card">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Estadísticas de Memcached</h5>
|
||||
@foreach ($memcachedStats as $stat)
|
||||
<table class="table table-bordered table-sm mb-2">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>Versión de Memcached</strong></td>
|
||||
<td>{{ $stat['version'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Libevent</strong></td>
|
||||
<td>{{ $stat['libevent'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Servidor</strong></td>
|
||||
<td>{{ $stat['server'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Puerto TCP</strong></td>
|
||||
<td>{{ $stat['tcp_port'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Conexiones máximas</strong></td>
|
||||
<td>{{ $stat['max_connections'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Conexiones totales</strong></td>
|
||||
<td>{{ $stat['total_connections'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Conexiones rechazadas</strong></td>
|
||||
<td>{{ $stat['rejected_connections'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Memoria máxima</strong></td>
|
||||
<td>{{ number_format($stat['limit_maxbytes'] / 1024 / 1024, 2) }} MB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Comandos GET ejecutados</strong></td>
|
||||
<td>{{ $stat['cmd_get'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Comandos SET ejecutados</strong></td>
|
||||
<td>{{ $stat['cmd_set'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>GET exitosos</strong></td>
|
||||
<td>{{ $stat['get_hits'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>GET fallidos</strong></td>
|
||||
<td>{{ $stat['get_misses'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Claves expulsadas</strong></td>
|
||||
<td>{{ $stat['evictions'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Megabytes leídos</strong></td>
|
||||
<td>{{ number_format($stat['bytes_read'] / 1024 / 1024, 2) }} MB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Megabytes escritos</strong></td>
|
||||
<td>{{ number_format($stat['bytes_written'] / 1024 / 1024, 2) }} MB</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Total de objetos</strong></td>
|
||||
<td>{{ $stat['total_items'] }}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-bordered table-sm">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>Claves almacenadas</strong></td>
|
||||
<td>{{ $stat['curr_items'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Memoria usada</strong></td>
|
||||
<td>
|
||||
<span class="{{ ($stat['bytes'] / $stat['limit_maxbytes']) > 0.8 ? 'text-danger' : 'text-success' }}">
|
||||
{{ number_format($stat['bytes'] / 1024 / 1024, 2) }} MB
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Tiempo de actividad</strong></td>
|
||||
<td>{{ gmdate('H\h i\m s\s', $stat['uptime']) }}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
{{-- Botones --}}
|
||||
<div class="row my-4">
|
||||
<div class="col-lg-12 text-end">
|
||||
<button
|
||||
class="btn btn-danger btn-clear-cache btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
wire:click="clearCache"
|
||||
data-loading-text="Eliminando Caché de Memcached..."
|
||||
{{ $stat['curr_items']? '': 'disabled' }}>
|
||||
Eliminar Caché de Memcached
|
||||
</button>
|
||||
<button
|
||||
class="btn btn-secondary btn-reload-cache-stats btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
wire:click="reloadCacheStats"
|
||||
data-loading-text="Actualizando...">
|
||||
Actualizar
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
{{-- Notifications --}}
|
||||
<div class="notification-container" wire:ignore></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
144
modules/Admin/Resources/views/livewire/cache/redis-stats.blade.php
vendored
Normal file
144
modules/Admin/Resources/views/livewire/cache/redis-stats.blade.php
vendored
Normal file
@ -0,0 +1,144 @@
|
||||
<div>
|
||||
<div class="form-custom-listener" id="redis-stats-card">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Estadísticas de Redis</h5>
|
||||
<div class="">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered table-sm mb-2">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>Versión de Redis</strong></td>
|
||||
<td>{{ $redisStats['redis_version'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Servidor</strong></td>
|
||||
<td>{{ $redisStats['server'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Puerto TCP</strong></td>
|
||||
<td>{{ $redisStats['tcp_port'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Clientes conectados</strong></td>
|
||||
<td>{{ $redisStats['connected_clients'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Clientes bloqueados</strong></td>
|
||||
<td>{{ $redisStats['blocked_clients'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Pico máximo de memoria utilizada</strong></td>
|
||||
<td>
|
||||
@if ($redisStats['maxmemory'] > 0)
|
||||
{{-- Usar maxmemory si está configurado --}}
|
||||
<span class="{{ ($redisStats['used_memory_peak'] / $redisStats['maxmemory']) > 0.8 ? 'text-warning' : 'text-success' }}">
|
||||
{{ $redisStats['used_memory_peak_human'] }}
|
||||
</span>
|
||||
@else
|
||||
{{-- Usar total_system_memory si maxmemory no está configurado --}}
|
||||
<span class="{{ ($redisStats['used_memory_peak'] / $redisStats['total_system_memory']) > 0.8 ? 'text-warning' : 'text-success' }}">
|
||||
{{ $redisStats['used_memory_peak_human'] }}
|
||||
</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Memoria total del sistema</strong></td>
|
||||
<td>{{ $redisStats['total_system_memory_human'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Límite máximo de memoria</strong></td>
|
||||
<td>
|
||||
@if ($redisStats['maxmemory'] > 0)
|
||||
{{ $redisStats['maxmemory_human'] }}
|
||||
@else
|
||||
<span class="text-info">Sin límite configurado</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Total de conexiones recibidas</strong></td>
|
||||
<td>{{ $redisStats['total_connections_received'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Total de comandos procesados</strong></td>
|
||||
<td>{{ $redisStats['total_commands_processed'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Política de uso de memoria</strong></td>
|
||||
<td>{{ $redisStats['maxmemory_policy'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Rol del servidor</strong></td>
|
||||
<td>{{ $redisStats['role'] }}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-bordered table-sm">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>Claves almacenadas</strong></td>
|
||||
<td>{{ $redisStats['keys'] }}</td>
|
||||
</tr>
|
||||
@isset ($redisStats['databases']['default']['database'])
|
||||
<tr>
|
||||
<td><strong>Base de datos general de Redis</strong></td>
|
||||
<td>{{ $redisStats['databases']['default']['database'] }}</td>
|
||||
</tr>
|
||||
@endisset
|
||||
@isset ($redisStats['databases']['cache']['database'])
|
||||
<tr>
|
||||
<td><strong>Base de datos de caché</strong></td>
|
||||
<td>{{ $redisStats['databases']['cache']['database'] }}</td>
|
||||
</tr>
|
||||
@endisset
|
||||
@isset ($redisStats['databases']['sessions']['database'])
|
||||
<tr>
|
||||
<td><strong>Base de datos de sesiones</strong></td>
|
||||
<td>{{ $redisStats['databases']['sessions']['database'] }}</td>
|
||||
</tr>
|
||||
@endisset
|
||||
<tr>
|
||||
<td><strong>Memoria usada</strong></td>
|
||||
<td>
|
||||
@if ($redisStats['maxmemory'] > 0)
|
||||
{{-- Usar maxmemory si está configurado --}}
|
||||
<span class="{{ ($redisStats['used_memory'] / $redisStats['maxmemory']) > 0.8 ? 'text-danger' : 'text-success' }}">
|
||||
{{ $redisStats['used_memory_human'] }}
|
||||
</span>
|
||||
@else
|
||||
{{-- Usar total_system_memory si maxmemory no está configurado --}}
|
||||
<span class="{{ ($redisStats['used_memory'] / $redisStats['total_system_memory']) > 0.8 ? 'text-danger' : 'text-success' }}">
|
||||
{{ $redisStats['used_memory_human'] }}
|
||||
</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Tiempo de actividad</strong></td>
|
||||
<td>{{ $redisStats['uptime'] }}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
{{-- Botones --}}
|
||||
<div class="row my-4">
|
||||
<div class="col-lg-12 text-end">
|
||||
<button
|
||||
class="btn btn-secondary btn-clear-cache btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
wire:click="reloadCacheStats"
|
||||
data-loading-text="Actualizando...">
|
||||
Actualizar
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
{{-- Notifications --}}
|
||||
<div class="notification-container" wire:ignore></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
121
modules/Admin/Resources/views/livewire/cache/session-stats.blade.php
vendored
Normal file
121
modules/Admin/Resources/views/livewire/cache/session-stats.blade.php
vendored
Normal file
@ -0,0 +1,121 @@
|
||||
<div>
|
||||
<div class="form-custom-listener" id="session-stats-card">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Configuraciones de Sesiones</h5>
|
||||
<div class="">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered table-sm">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>Driver</strong></td>
|
||||
<td>{{ $cacheConfig['session']['driver'] }}</td>
|
||||
</tr>
|
||||
@if(in_array($cacheConfig['session']['driver'], ['database', 'memcached', 'redis']))
|
||||
<tr>
|
||||
<td><strong>Versión</strong></td>
|
||||
<td>
|
||||
@if($cacheConfig['session']['driver'] == 'database')
|
||||
{{ $cacheConfig['driver'][$cacheConfig['database']['default']]['version'] }}
|
||||
@else
|
||||
{{ $cacheConfig['driver'][$cacheConfig['session']['driver']]['version'] }}
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Servidor</strong></td>
|
||||
<td>{{ $cacheConfig['session']['host'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if(in_array($cacheConfig['session']['driver'], ['database', 'redis']))
|
||||
<tr>
|
||||
<td><strong>Base de datos</strong></td>
|
||||
<td>{{ $cacheConfig['session']['database'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if($cacheConfig['session']['driver'] == 'database')
|
||||
<tr>
|
||||
<td><strong>Tabla de sessiones</strong></td>
|
||||
<td>{{ $cacheConfig['session']['table'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if ($cacheConfig['session']['driver'] === 'file')
|
||||
<tr>
|
||||
<td><strong>Ubicación de las sesiones</strong></td>
|
||||
<td>{{ $cacheConfig['session']['files'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
<tr>
|
||||
<td><strong>Tiempo de vida (Minutos)</strong></td>
|
||||
<td>{{ $cacheConfig['session']['lifetime'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Encriptación habilitada</strong></td>
|
||||
<td>{{ $cacheConfig['session']['encrypt'] ? 'Sí' : 'No' }}</td>
|
||||
</tr>
|
||||
|
||||
{{-- Mostrar solo si el driver utiliza cookies --}}
|
||||
@if (in_array($cacheConfig['session']['driver'], ['cookie', 'database', 'redis']))
|
||||
<tr>
|
||||
<td><strong>Nombre de la cookie</strong></td>
|
||||
<td>{{ $cacheConfig['session']['cookie'] ?? 'No especificado' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Path de la Cookie</strong></td>
|
||||
<td>{{ $cacheConfig['session']['path'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Dominio de las sesiones</strong></td>
|
||||
<td>{{ $cacheConfig['session']['domain'] ?? 'No especificado' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Cookies seguras</strong></td>
|
||||
<td>{{ $cacheConfig['session']['secure'] ? 'Sí' : 'No' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Cookies solo HTTPS</strong></td>
|
||||
<td>{{ $cacheConfig['session']['http_only'] ? 'Sí' : 'No' }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if($cacheConfig['session']['driver'] != 'memcached')
|
||||
<tr>
|
||||
<td><strong>Sesiones</strong></td>
|
||||
<td>{{ $sessionStats['session_count'] }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if($cacheConfig['session']['driver'] != 'memcached')
|
||||
<div>
|
||||
{{-- Botones --}}
|
||||
<div class="row my-4">
|
||||
<div class="col-lg-12 text-end">
|
||||
@if($cacheConfig['cache']['default'] != 'memcached')
|
||||
<button
|
||||
class="btn btn-danger btn-clear-cache btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
wire:click="clearSessions"
|
||||
{{ $sessionStats['session_count']? '': 'disabled' }}
|
||||
data-loading-text="Eliminando Sesiones...">
|
||||
Eliminar Sesiones
|
||||
</button>
|
||||
@endif
|
||||
<button
|
||||
class="btn btn-secondary btn-reload-cache-stats btn-sm mt-2 mr-2 waves-effect waves-light"
|
||||
wire:click="reloadSessionStats"
|
||||
data-loading-text="Actualizando...">
|
||||
Actualizar
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
{{-- Notifications --}}
|
||||
<div class="notification-container" wire:ignore></div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
Reference in New Issue
Block a user