Files
status/model/status.go
2025-08-19 20:38:33 +03:00

34 lines
809 B
Go

package model
import (
"time"
"gorm.io/gorm"
)
type StatusCode string
const (
StatusOK StatusCode = "ok" // Means - response ok, service is alive
StatusFailed StatusCode = "failed" // Means - response failed, all tries failed, service down
StatusWarn StatusCode = "warn" // Means - response failed after N tries and still watched
)
type Status struct {
ID int `gorm:"primary_key;auto_increment" json:"-"`
ServiceID int `gorm:"one" json:"-"`
Status StatusCode `gorm:"size:255;not null" json:"status"`
Description *string `gorm:"size:255" json:"description"`
CreatedAt time.Time `json:"created_at"`
}
func (Status) TableName() string {
return "statuses"
}
func (s *Status) BeforeCreate(*gorm.DB) error {
s.CreatedAt = time.Now()
return nil
}