mirror of
https://github.com/bluewave-labs/Checkmate.git
synced 2026-01-20 00:29:45 -06:00
61 lines
1.5 KiB
JavaScript
61 lines
1.5 KiB
JavaScript
import mongoose from "mongoose";
|
|
|
|
const cpuSchema = mongoose.Schema({
|
|
physical_core: { type: Number, default: 0 },
|
|
logical_core: { type: Number, default: 0 },
|
|
frequency: { type: Number, default: 0 },
|
|
temperature: { type: Number, default: 0 },
|
|
free_percent: { type: Number, default: 0 },
|
|
usage_percent: { type: Number, default: 0 },
|
|
});
|
|
|
|
const memorySchema = mongoose.Schema({
|
|
total_bytes: { type: Number, default: 0 },
|
|
available_bytes: { type: Number, default: 0 },
|
|
used_bytes: { type: Number, default: 0 },
|
|
usage_percent: { type: Number, default: 0 },
|
|
});
|
|
|
|
const discSchema = mongoose.Schema({
|
|
read_speed_bytes: { type: Number, default: 0 },
|
|
write_speed_bytes: { type: Number, default: 0 },
|
|
total_bytes: { type: Number, default: 0 },
|
|
free_bytes: { type: Number, default: 0 },
|
|
usage_percent: { type: Number, default: 0 },
|
|
});
|
|
|
|
const hostSchema = mongoose.Schema({
|
|
os: { type: String, default: "" },
|
|
platform: { type: String, default: "" },
|
|
kernel_version: { type: String, default: "" },
|
|
});
|
|
|
|
const HardwareCheckSchema = mongoose.Schema(
|
|
{
|
|
monitorId: {
|
|
type: mongoose.Schema.Types.ObjectId,
|
|
ref: "Monitor",
|
|
immutable: true,
|
|
},
|
|
cpu: {
|
|
type: cpuSchema,
|
|
default: () => ({}),
|
|
},
|
|
memory: {
|
|
type: memorySchema,
|
|
default: () => ({}),
|
|
},
|
|
disk: {
|
|
type: discSchema,
|
|
default: () => ({}),
|
|
},
|
|
host: {
|
|
type: hostSchema,
|
|
default: () => ({}),
|
|
},
|
|
},
|
|
{ timestamps: true }
|
|
);
|
|
|
|
export default mongoose.model("HardwareCheck", HardwareCheckSchema);
|