mirror of
https://github.com/usetrmnl/byos_laravel.git
synced 2026-01-14 07:27:47 +00:00
feat: inspect device logs
feat: create DeviceLog model on log request feat: implement logs route, logs view feat: implement details on device log timezone, latest 50 log items sort by latest device timestamp cleanup job add tests
This commit is contained in:
parent
04d089c445
commit
ab27f19938
12 changed files with 425 additions and 0 deletions
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
use App\Jobs\GenerateScreenJob;
|
||||
use App\Models\Device;
|
||||
use App\Models\DeviceLog;
|
||||
use App\Models\User;
|
||||
use App\Services\ImageGenerationService;
|
||||
use Illuminate\Http\Request;
|
||||
|
|
@ -185,6 +186,11 @@ Route::post('/log', function (Request $request) {
|
|||
$logs = $request->json('log.logs_array', []);
|
||||
foreach ($logs as $log) {
|
||||
\Log::info('Device Log', $log);
|
||||
DeviceLog::create([
|
||||
'device_id' => $device->id,
|
||||
'device_timestamp' => $log['creation_timestamp'] ?? now(),
|
||||
'log_entry' => $log,
|
||||
]);
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
<?php
|
||||
|
||||
use App\Jobs\CleanupDeviceLogsJob;
|
||||
use App\Jobs\FetchProxyCloudResponses;
|
||||
use App\Jobs\FirmwarePollJob;
|
||||
use Illuminate\Support\Facades\Schedule;
|
||||
|
||||
Schedule::job(FetchProxyCloudResponses::class, [])->cron(
|
||||
config('services.trmnl.proxy_refresh_cron') ? config('services.trmnl.proxy_refresh_cron') :
|
||||
|
|
@ -9,3 +11,4 @@ Schedule::job(FetchProxyCloudResponses::class, [])->cron(
|
|||
);
|
||||
|
||||
Schedule::job(FirmwarePollJob::class)->daily();
|
||||
Schedule::job(CleanupDeviceLogsJob::class)->daily();
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ Route::middleware(['auth'])->group(function () {
|
|||
|
||||
Volt::route('/devices', 'devices.manage')->name('devices');
|
||||
Volt::route('/devices/{device}/configure', 'devices.configure')->name('devices.configure');
|
||||
Volt::route('/devices/{device}/logs', 'devices.logs')->name('devices.logs');
|
||||
|
||||
Volt::route('plugins', 'plugins.index')->name('plugins.index');
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue