heizung/database/migrations/2026_04_19_220213_create_events_table.php

20 lines
788 B
PHP
Raw Permalink Normal View History

<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration {
public function up(): void {
Schema::create('events', function (Blueprint $t) {
$t->bigIncrements('id');
$t->foreignId('device_id')->constrained('devices')->cascadeOnDelete();
$t->enum('event_type',['burner_on','burner_off','error','warning','info','connection']);
$t->enum('severity',['debug','info','warning','error','critical'])->default('info');
$t->json('payload')->nullable();
$t->timestamp('occurred_at',3);
$t->index(['device_id','occurred_at'],'idx_dt');
$t->index(['severity','occurred_at'],'idx_sev');
});
}
public function down(): void { Schema::dropIfExists('events'); }
};