watchyourlan/backend/internal/models/models.go
2025-09-05 06:10:16 +07:00

56 lines
1 KiB
Go

package models
// Conf - app config
type Conf struct {
Host string
Port string
Theme string
Color string
DirPath string
ConfPath string
DBPath string
NodePath string
LogLevel string
Ifaces string
ArpArgs string
ArpStrs []string
Timeout int
TrimHist int
ShoutURL string
Version string
// PostgreSQL
UseDB string
PGConnect string
// InfluxDB
InfluxEnable bool
InfluxAddr string
InfluxToken string
InfluxOrg string
InfluxBucket string
InfluxSkipTLS bool
// Prometheus
PrometheusEnable bool
}
// Host - one host
type Host struct {
ID int `gorm:"column:ID;primaryKey"`
Name string `gorm:"column:NAME"`
DNS string `gorm:"column:DNS"`
Iface string `gorm:"column:IFACE"`
IP string `gorm:"column:IP"`
Mac string `gorm:"column:MAC"`
Hw string `gorm:"column:HW"`
Date string `gorm:"column:DATE"`
Known int `gorm:"column:KNOWN"`
Now int `gorm:"column:NOW"`
}
// Stat - status
type Stat struct {
Total int
Online int
Offline int
Known int
Unknown int
}