V1.1
This commit is contained in:
55
prisma/migrations/20251222235834_ingest_log/migration.sql
Normal file
55
prisma/migrations/20251222235834_ingest_log/migration.sql
Normal file
@@ -0,0 +1,55 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Machine" ADD COLUMN "schema_version" TEXT,
|
||||
ADD COLUMN "seq" BIGINT,
|
||||
ADD COLUMN "ts" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ADD COLUMN "ts_server" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "MachineCycle" ADD COLUMN "schema_version" TEXT,
|
||||
ADD COLUMN "seq" BIGINT,
|
||||
ADD COLUMN "ts_server" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "MachineEvent" ADD COLUMN "schema_version" TEXT,
|
||||
ADD COLUMN "seq" BIGINT,
|
||||
ADD COLUMN "ts_server" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "MachineHeartbeat" ADD COLUMN "schema_version" TEXT,
|
||||
ADD COLUMN "seq" BIGINT,
|
||||
ADD COLUMN "ts_server" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "MachineKpiSnapshot" ADD COLUMN "schema_version" TEXT,
|
||||
ADD COLUMN "seq" BIGINT,
|
||||
ADD COLUMN "ts_server" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "IngestLog" (
|
||||
"id" TEXT NOT NULL,
|
||||
"orgId" TEXT,
|
||||
"machineId" TEXT,
|
||||
"endpoint" TEXT NOT NULL,
|
||||
"schemaVersion" TEXT,
|
||||
"seq" BIGINT,
|
||||
"tsDevice" TIMESTAMP(3),
|
||||
"tsServer" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"ok" BOOLEAN NOT NULL,
|
||||
"status" INTEGER NOT NULL,
|
||||
"errorCode" TEXT,
|
||||
"errorMsg" TEXT,
|
||||
"body" JSONB,
|
||||
"ip" TEXT,
|
||||
"userAgent" TEXT,
|
||||
|
||||
CONSTRAINT "IngestLog_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "IngestLog_endpoint_tsServer_idx" ON "IngestLog"("endpoint", "tsServer");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "IngestLog_machineId_tsServer_idx" ON "IngestLog"("machineId", "tsServer");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "IngestLog_machineId_seq_idx" ON "IngestLog"("machineId", "seq");
|
||||
@@ -76,6 +76,10 @@ model Machine {
|
||||
location String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
tsDevice DateTime @default(now()) @map("ts")
|
||||
tsServer DateTime @default(now()) @map("ts_server")
|
||||
schemaVersion String? @map("schema_version")
|
||||
seq BigInt? @map("seq")
|
||||
|
||||
org Org @relation(fields: [orgId], references: [id], onDelete: Cascade)
|
||||
heartbeats MachineHeartbeat[]
|
||||
@@ -93,6 +97,9 @@ model MachineHeartbeat {
|
||||
orgId String
|
||||
machineId String
|
||||
ts DateTime @default(now())
|
||||
tsServer DateTime @default(now()) @map("ts_server")
|
||||
schemaVersion String? @map("schema_version")
|
||||
seq BigInt? @map("seq")
|
||||
|
||||
status String
|
||||
message String?
|
||||
@@ -131,6 +138,9 @@ model MachineKpiSnapshot {
|
||||
|
||||
trackingEnabled Boolean?
|
||||
productionStarted Boolean?
|
||||
tsServer DateTime @default(now()) @map("ts_server")
|
||||
schemaVersion String? @map("schema_version")
|
||||
seq BigInt? @map("seq")
|
||||
|
||||
org Org @relation(fields: [orgId], references: [id], onDelete: Cascade)
|
||||
machine Machine @relation(fields: [machineId], references: [id], onDelete: Cascade)
|
||||
@@ -150,6 +160,9 @@ model MachineEvent {
|
||||
requiresAck Boolean @default(false)
|
||||
title String
|
||||
description String?
|
||||
tsServer DateTime @default(now()) @map("ts_server")
|
||||
schemaVersion String? @map("schema_version")
|
||||
seq BigInt? @map("seq")
|
||||
|
||||
// store the raw data blob so we don't lose fields
|
||||
data Json?
|
||||
@@ -179,6 +192,9 @@ model MachineCycle {
|
||||
cavities Int?
|
||||
goodDelta Int?
|
||||
scrapDelta Int?
|
||||
tsServer DateTime @default(now()) @map("ts_server")
|
||||
schemaVersion String? @map("schema_version")
|
||||
seq BigInt? @map("seq")
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
|
||||
@@ -187,3 +203,27 @@ model MachineCycle {
|
||||
@@index([orgId, machineId, cycleCount])
|
||||
}
|
||||
|
||||
model IngestLog {
|
||||
id String @id @default(uuid())
|
||||
orgId String?
|
||||
machineId String?
|
||||
endpoint String
|
||||
schemaVersion String?
|
||||
seq BigInt?
|
||||
tsDevice DateTime?
|
||||
tsServer DateTime @default(now())
|
||||
|
||||
ok Boolean
|
||||
status Int
|
||||
errorCode String?
|
||||
errorMsg String?
|
||||
body Json?
|
||||
ip String?
|
||||
userAgent String?
|
||||
|
||||
@@index([endpoint, tsServer])
|
||||
@@index([machineId, tsServer])
|
||||
@@index([machineId, seq])
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user