engine/types/sidecar.go

80 lines
2.5 KiB
Go

package types
type Ping struct {
CRC string `json:"crc"`
}
type Node struct {
Host string `json:"Host"`
IPAddress []string `json:"IpAddress"`
Timestamp int64 `json:"Timestamp"`
Runtime *HardwareCollect `json:"Runtime"`
}
// Hardware Collect .
type HardwareCollect struct {
CPUUsedPercent float64 `json:"CPUUsedPercent"`
DiskFree uint64 `json:"DiskFree"`
DiskTotal uint64 `json:"DiskTotal"`
DiskUsedPercent float64 `json:"DiskUsedPercent"`
MemoryFree uint64 `json:"MemoryFree"`
MemoryTotal uint64 `json:"MemoryTotal"`
MemoryUsedPercent float64 `json:"MemoryUsedPercent"`
NetIOBytesRecv uint64 `json:"NetIOBytesRecv"`
NetIOBytesSent uint64 `json:"NetIOBytesSent"`
}
// Service Runtime .
type ServiceCollect struct {
ServiceKey string
MemAlloc uint64 `json:"MemAlloc"`
MemTotalAlloc uint64 `json:"MemTotalAlloc"`
MemSys uint64 `json:"MemSys"`
MemHeapAlloc uint64 `json:"MemHeapAlloc"`
CpuNumber int `json:"CpuNumber"`
CpuMaxProcs int `json:"CpuMaxProcs"`
GoroutinesNumber int `json:"GoroutinesNumber"`
CgoCallNumber int64 `json:"CgoCallNumber"`
Timestamp int64 `json:"Timestamp"`
}
type LoggerMsg struct {
Identity string `json:"identity,omitempty"`
Host string `json:"host,omitempty"`
ServiceKey string `json:"service_key,omitempty"`
Type string `json:"type,omitempty"`
Level string `json:"level,omitempty"`
Method string `json:"method,omitempty"`
Data string `json:"data,omitempty"`
Trace string `json:"trace,omitempty"`
Timestamp int64 `json:"Timestamp"`
}
type RequestMsg struct {
RequestId string `json:"request_id,omitempty"`
Protocol string `json:"protocol,omitempty"`
Uri string `json:"uri,omitempty"`
Method string `json:"method,omitempty"`
Target string `json:"target,omitempty"`
StartTime int64 `json:"start_time,omitempty"`
Duration int64 `json:"duration,omitempty"`
EndTime int64 `json:"end_time,omitempty"`
Status int32 `json:"status,omitempty"`
Reply string `json:"reply,omitempty"`
UserAgent string `json:"user_agent,omitempty"`
RemoteAddr string `json:"remote_addr,omitempty"`
RequestBody string `json:"request_body,omitempty"`
Timestamp int64 `json:"Timestamp"`
}
type ServiceMethods struct {
FileName string
ServiceKey string
Methods []string
}
type SidecarReply struct {
Status int32 `json:"status,omitempty"`
Message string `json:"message,omitempty"`
}