Monitoring Settings

This commit is contained in:
headlesdev 2025-05-28 14:44:32 +02:00
parent c4da6d45f5
commit a066a74151
9 changed files with 6364 additions and 39 deletions

File diff suppressed because one or more lines are too long

View File

@ -242,6 +242,30 @@ exports.Prisma.NotificationTestScalarFieldEnum = {
success: 'success' success: 'success'
}; };
exports.Prisma.GeneralServerMonitoringSettingsScalarFieldEnum = {
id: 'id',
frequency: 'frequency',
checksUntilOffline: 'checksUntilOffline'
};
exports.Prisma.GeneralApplicationMonitoringSettingsScalarFieldEnum = {
id: 'id',
frequency: 'frequency',
checksUntilOffline: 'checksUntilOffline'
};
exports.Prisma.ServerMonitoringSettingsScalarFieldEnum = {
id: 'id',
serverId: 'serverId',
generalSettingsId: 'generalSettingsId'
};
exports.Prisma.ApplicationMonitoringSettingsScalarFieldEnum = {
id: 'id',
applicationId: 'applicationId',
generalSettingsId: 'generalSettingsId'
};
exports.Prisma.SortOrder = { exports.Prisma.SortOrder = {
asc: 'asc', asc: 'asc',
desc: 'desc' desc: 'desc'
@ -283,7 +307,11 @@ exports.Prisma.ModelName = {
ServerMonitoringNotification: 'ServerMonitoringNotification', ServerMonitoringNotification: 'ServerMonitoringNotification',
ApplicationMonitoringNotification: 'ApplicationMonitoringNotification', ApplicationMonitoringNotification: 'ApplicationMonitoringNotification',
NotificationProvider: 'NotificationProvider', NotificationProvider: 'NotificationProvider',
NotificationTest: 'NotificationTest' NotificationTest: 'NotificationTest',
GeneralServerMonitoringSettings: 'GeneralServerMonitoringSettings',
GeneralApplicationMonitoringSettings: 'GeneralApplicationMonitoringSettings',
ServerMonitoringSettings: 'ServerMonitoringSettings',
ApplicationMonitoringSettings: 'ApplicationMonitoringSettings'
}; };
/** /**

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,5 @@
{ {
"name": "prisma-client-64aff5cfd2cd1523f0bb1f03af9aeb274dcb23e50868aec227bc1494fa5a7d27", "name": "prisma-client-f1235714bbffddc1d2e6784ff382367dc9d016612d156baafb10f4a6136ed602",
"main": "index.js", "main": "index.js",
"types": "index.d.ts", "types": "index.d.ts",
"browser": "index-browser.js", "browser": "index-browser.js",

View File

@ -50,23 +50,24 @@ model Network {
} }
model Server { model Server {
id Int @id @default(autoincrement()) id Int @id @default(autoincrement())
network Network @relation(fields: [networkId], references: [id], onDelete: Cascade) network Network @relation(fields: [networkId], references: [id], onDelete: Cascade)
networkId Int networkId Int
name String name String
description String? description String?
icon String? icon String?
ipv4Address String? ipv4Address String?
osDetails String? osDetails String?
cpuDetails String? cpuDetails String?
gpuDetails String? gpuDetails String?
memoryDetails String? memoryDetails String?
storageDetails String? storageDetails String?
managementUrl String? managementUrl String?
monitoring Boolean @default(false) monitoring Boolean @default(false)
monitoringUrl String? monitoringUrl String?
monitoringData ServerMonitoring[] monitoringData ServerMonitoring[]
applications Application[] applications Application[]
monitoringSettings ServerMonitoringSettings[]
@@map("servers") @@map("servers")
} }
@ -92,15 +93,16 @@ model ServerMonitoring {
} }
model Application { model Application {
id Int @id @default(autoincrement()) id Int @id @default(autoincrement())
server Server @relation(fields: [serverId], references: [id], onDelete: Cascade) server Server @relation(fields: [serverId], references: [id], onDelete: Cascade)
serverId Int serverId Int
name String name String
description String? description String?
icon String? icon String?
url String? url String?
monitoring Boolean @default(false) monitoring Boolean @default(false)
monitoringData ApplicationMonitoring[] monitoringData ApplicationMonitoring[]
monitoringSettings ApplicationMonitoringSettings[]
@@map("applications") @@map("applications")
} }
@ -179,3 +181,37 @@ enum NotificationType {
NTFY NTFY
SMTP SMTP
} }
model GeneralServerMonitoringSettings {
id Int @id @default(autoincrement())
frequency Int
checksUntilOffline Int
serverSettings ServerMonitoringSettings[]
@@map("general_server_monitoring_settings")
}
model GeneralApplicationMonitoringSettings {
id Int @id @default(autoincrement())
frequency Int
checksUntilOffline Int
applicationSettings ApplicationMonitoringSettings[]
@@map("general_application_monitoring_settings")
}
model ServerMonitoringSettings {
id Int @id @default(autoincrement())
server Server @relation(fields: [serverId], references: [id], onDelete: Cascade)
serverId Int
generalSettings GeneralServerMonitoringSettings @relation(fields: [generalSettingsId], references: [id], onDelete: Cascade)
generalSettingsId Int
}
model ApplicationMonitoringSettings {
id Int @id @default(autoincrement())
application Application @relation(fields: [applicationId], references: [id], onDelete: Cascade)
applicationId Int
generalSettings GeneralApplicationMonitoringSettings @relation(fields: [generalSettingsId], references: [id], onDelete: Cascade)
generalSettingsId Int
}

View File

@ -242,6 +242,30 @@ exports.Prisma.NotificationTestScalarFieldEnum = {
success: 'success' success: 'success'
}; };
exports.Prisma.GeneralServerMonitoringSettingsScalarFieldEnum = {
id: 'id',
frequency: 'frequency',
checksUntilOffline: 'checksUntilOffline'
};
exports.Prisma.GeneralApplicationMonitoringSettingsScalarFieldEnum = {
id: 'id',
frequency: 'frequency',
checksUntilOffline: 'checksUntilOffline'
};
exports.Prisma.ServerMonitoringSettingsScalarFieldEnum = {
id: 'id',
serverId: 'serverId',
generalSettingsId: 'generalSettingsId'
};
exports.Prisma.ApplicationMonitoringSettingsScalarFieldEnum = {
id: 'id',
applicationId: 'applicationId',
generalSettingsId: 'generalSettingsId'
};
exports.Prisma.SortOrder = { exports.Prisma.SortOrder = {
asc: 'asc', asc: 'asc',
desc: 'desc' desc: 'desc'
@ -283,7 +307,11 @@ exports.Prisma.ModelName = {
ServerMonitoringNotification: 'ServerMonitoringNotification', ServerMonitoringNotification: 'ServerMonitoringNotification',
ApplicationMonitoringNotification: 'ApplicationMonitoringNotification', ApplicationMonitoringNotification: 'ApplicationMonitoringNotification',
NotificationProvider: 'NotificationProvider', NotificationProvider: 'NotificationProvider',
NotificationTest: 'NotificationTest' NotificationTest: 'NotificationTest',
GeneralServerMonitoringSettings: 'GeneralServerMonitoringSettings',
GeneralApplicationMonitoringSettings: 'GeneralApplicationMonitoringSettings',
ServerMonitoringSettings: 'ServerMonitoringSettings',
ApplicationMonitoringSettings: 'ApplicationMonitoringSettings'
}; };
/** /**

View File

@ -0,0 +1,47 @@
-- CreateTable
CREATE TABLE "general_server_monitoring_settings" (
"id" SERIAL NOT NULL,
"frequency" INTEGER NOT NULL,
"checksUntilOffline" INTEGER NOT NULL,
CONSTRAINT "general_server_monitoring_settings_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "general_application_monitoring_settings" (
"id" SERIAL NOT NULL,
"frequency" INTEGER NOT NULL,
"checksUntilOffline" INTEGER NOT NULL,
CONSTRAINT "general_application_monitoring_settings_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "ServerMonitoringSettings" (
"id" SERIAL NOT NULL,
"serverId" INTEGER NOT NULL,
"generalSettingsId" INTEGER NOT NULL,
CONSTRAINT "ServerMonitoringSettings_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "ApplicationMonitoringSettings" (
"id" SERIAL NOT NULL,
"applicationId" INTEGER NOT NULL,
"generalSettingsId" INTEGER NOT NULL,
CONSTRAINT "ApplicationMonitoringSettings_pkey" PRIMARY KEY ("id")
);
-- AddForeignKey
ALTER TABLE "ServerMonitoringSettings" ADD CONSTRAINT "ServerMonitoringSettings_serverId_fkey" FOREIGN KEY ("serverId") REFERENCES "servers"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "ServerMonitoringSettings" ADD CONSTRAINT "ServerMonitoringSettings_generalSettingsId_fkey" FOREIGN KEY ("generalSettingsId") REFERENCES "general_server_monitoring_settings"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "ApplicationMonitoringSettings" ADD CONSTRAINT "ApplicationMonitoringSettings_applicationId_fkey" FOREIGN KEY ("applicationId") REFERENCES "applications"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "ApplicationMonitoringSettings" ADD CONSTRAINT "ApplicationMonitoringSettings_generalSettingsId_fkey" FOREIGN KEY ("generalSettingsId") REFERENCES "general_application_monitoring_settings"("id") ON DELETE CASCADE ON UPDATE CASCADE;

View File

@ -67,6 +67,7 @@ model Server {
monitoringUrl String? monitoringUrl String?
monitoringData ServerMonitoring[] monitoringData ServerMonitoring[]
applications Application[] applications Application[]
monitoringSettings ServerMonitoringSettings[]
@@map("servers") @@map("servers")
} }
@ -102,6 +103,7 @@ model Application {
url String? url String?
monitoring Boolean @default(false) monitoring Boolean @default(false)
monitoringData ApplicationMonitoring[] monitoringData ApplicationMonitoring[]
monitoringSettings ApplicationMonitoringSettings[]
@@map("applications") @@map("applications")
} }
@ -180,4 +182,38 @@ enum NotificationType {
TELEGRAM TELEGRAM
NTFY NTFY
SMTP SMTP
}
model GeneralServerMonitoringSettings {
id Int @id @default(autoincrement())
frequency Int
checksUntilOffline Int
serverSettings ServerMonitoringSettings[]
@@map("general_server_monitoring_settings")
}
model GeneralApplicationMonitoringSettings {
id Int @id @default(autoincrement())
frequency Int
checksUntilOffline Int
applicationSettings ApplicationMonitoringSettings[]
@@map("general_application_monitoring_settings")
}
model ServerMonitoringSettings {
id Int @id @default(autoincrement())
server Server @relation(fields: [serverId], references: [id], onDelete: Cascade)
serverId Int
generalSettings GeneralServerMonitoringSettings @relation(fields: [generalSettingsId], references: [id], onDelete: Cascade)
generalSettingsId Int
}
model ApplicationMonitoringSettings {
id Int @id @default(autoincrement())
application Application @relation(fields: [applicationId], references: [id], onDelete: Cascade)
applicationId Int
generalSettings GeneralApplicationMonitoringSettings @relation(fields: [generalSettingsId], references: [id], onDelete: Cascade)
generalSettingsId Int
} }