package dto import "opsxloki/models" // 日志查询域 type LogSourceRequest struct { ID uint `json:"id"` Name string `json:"name"` TargetType string `json:"targetType" binding:"omitempty,oneof=cluster-svc url"` ClusterID uint `json:"clusterID"` Namespace string `json:"namespace"` Service string `json:"service"` Port int `json:"port"` URL string `json:"url"` AuthType string `json:"authType"` BasicUser string `json:"basicUser"` BasicPass string `json:"basicPass"` BearerToken string `json:"bearerToken"` Headers map[string]string `json:"headers"` SkipTLSVerify bool `json:"skipTLSVerify"` IsDefault bool `json:"isDefault"` Access []models.LogSourceAccess `json:"access"` } type LogQueryRequest struct { SourceID uint `json:"sourceId" binding:"required"` Query string `json:"query" binding:"required"` Start int64 `json:"start"` // epoch 纳秒 End int64 `json:"end"` Limit int `json:"limit"` Direction string `json:"direction"` Cursor string `json:"cursor"` } type LogContextRequest struct { SourceID uint `json:"sourceId" binding:"required"` TimestampNs string `json:"timestampNs" binding:"required"` Labels map[string]string `json:"labels" binding:"required"` }