towerops-agent/pb/agent.pb.go
2026-06-06 13:00:59 -05:00

3130 lines
92 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.11
// protoc v6.32.1
// source: proto/agent.proto
package pb
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
unsafe "unsafe"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type JobType int32
const (
JobType_DISCOVER JobType = 0
JobType_POLL JobType = 1
JobType_MIKROTIK JobType = 2
JobType_TEST_CREDENTIALS JobType = 3
JobType_PING JobType = 4
JobType_LLDP_TOPOLOGY JobType = 5 // Discover all LLDP neighbors for topology mapping
)
// Enum value maps for JobType.
var (
JobType_name = map[int32]string{
0: "DISCOVER",
1: "POLL",
2: "MIKROTIK",
3: "TEST_CREDENTIALS",
4: "PING",
5: "LLDP_TOPOLOGY",
}
JobType_value = map[string]int32{
"DISCOVER": 0,
"POLL": 1,
"MIKROTIK": 2,
"TEST_CREDENTIALS": 3,
"PING": 4,
"LLDP_TOPOLOGY": 5,
}
)
func (x JobType) Enum() *JobType {
p := new(JobType)
*p = x
return p
}
func (x JobType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (JobType) Descriptor() protoreflect.EnumDescriptor {
return file_proto_agent_proto_enumTypes[0].Descriptor()
}
func (JobType) Type() protoreflect.EnumType {
return &file_proto_agent_proto_enumTypes[0]
}
func (x JobType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use JobType.Descriptor instead.
func (JobType) EnumDescriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{0}
}
type QueryType int32
const (
QueryType_GET QueryType = 0
QueryType_WALK QueryType = 1
)
// Enum value maps for QueryType.
var (
QueryType_name = map[int32]string{
0: "GET",
1: "WALK",
}
QueryType_value = map[string]int32{
"GET": 0,
"WALK": 1,
}
)
func (x QueryType) Enum() *QueryType {
p := new(QueryType)
*p = x
return p
}
func (x QueryType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (QueryType) Descriptor() protoreflect.EnumDescriptor {
return file_proto_agent_proto_enumTypes[1].Descriptor()
}
func (QueryType) Type() protoreflect.EnumType {
return &file_proto_agent_proto_enumTypes[1]
}
func (x QueryType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use QueryType.Descriptor instead.
func (QueryType) EnumDescriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{1}
}
// Configuration received from the API
type AgentConfig struct {
state protoimpl.MessageState `protogen:"open.v1"`
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
PollIntervalSeconds uint32 `protobuf:"varint,2,opt,name=poll_interval_seconds,json=pollIntervalSeconds,proto3" json:"poll_interval_seconds,omitempty"`
Devices []*Device `protobuf:"bytes,3,rep,name=devices,proto3" json:"devices,omitempty"`
Checks []*Check `protobuf:"bytes,4,rep,name=checks,proto3" json:"checks,omitempty"` // Service checks (HTTP/TCP/DNS)
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AgentConfig) Reset() {
*x = AgentConfig{}
mi := &file_proto_agent_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AgentConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AgentConfig) ProtoMessage() {}
func (x *AgentConfig) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[0]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AgentConfig.ProtoReflect.Descriptor instead.
func (*AgentConfig) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{0}
}
func (x *AgentConfig) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *AgentConfig) GetPollIntervalSeconds() uint32 {
if x != nil {
return x.PollIntervalSeconds
}
return 0
}
func (x *AgentConfig) GetDevices() []*Device {
if x != nil {
return x.Devices
}
return nil
}
func (x *AgentConfig) GetChecks() []*Check {
if x != nil {
return x.Checks
}
return nil
}
type Device struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
IpAddress string `protobuf:"bytes,3,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
Snmp *SnmpConfig `protobuf:"bytes,4,opt,name=snmp,proto3" json:"snmp,omitempty"`
PollIntervalSeconds uint32 `protobuf:"varint,5,opt,name=poll_interval_seconds,json=pollIntervalSeconds,proto3" json:"poll_interval_seconds,omitempty"`
Sensors []*Sensor `protobuf:"bytes,6,rep,name=sensors,proto3" json:"sensors,omitempty"`
Interfaces []*Interface `protobuf:"bytes,7,rep,name=interfaces,proto3" json:"interfaces,omitempty"`
MonitoringEnabled bool `protobuf:"varint,8,opt,name=monitoring_enabled,json=monitoringEnabled,proto3" json:"monitoring_enabled,omitempty"`
CheckIntervalSeconds uint32 `protobuf:"varint,9,opt,name=check_interval_seconds,json=checkIntervalSeconds,proto3" json:"check_interval_seconds,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Device) Reset() {
*x = Device{}
mi := &file_proto_agent_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Device) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Device) ProtoMessage() {}
func (x *Device) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[1]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Device.ProtoReflect.Descriptor instead.
func (*Device) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{1}
}
func (x *Device) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *Device) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Device) GetIpAddress() string {
if x != nil {
return x.IpAddress
}
return ""
}
func (x *Device) GetSnmp() *SnmpConfig {
if x != nil {
return x.Snmp
}
return nil
}
func (x *Device) GetPollIntervalSeconds() uint32 {
if x != nil {
return x.PollIntervalSeconds
}
return 0
}
func (x *Device) GetSensors() []*Sensor {
if x != nil {
return x.Sensors
}
return nil
}
func (x *Device) GetInterfaces() []*Interface {
if x != nil {
return x.Interfaces
}
return nil
}
func (x *Device) GetMonitoringEnabled() bool {
if x != nil {
return x.MonitoringEnabled
}
return false
}
func (x *Device) GetCheckIntervalSeconds() uint32 {
if x != nil {
return x.CheckIntervalSeconds
}
return 0
}
type SnmpConfig struct {
state protoimpl.MessageState `protogen:"open.v1"`
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
Community string `protobuf:"bytes,3,opt,name=community,proto3" json:"community,omitempty"`
Port uint32 `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"`
Transport string `protobuf:"bytes,5,opt,name=transport,proto3" json:"transport,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SnmpConfig) Reset() {
*x = SnmpConfig{}
mi := &file_proto_agent_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SnmpConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SnmpConfig) ProtoMessage() {}
func (x *SnmpConfig) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[2]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SnmpConfig.ProtoReflect.Descriptor instead.
func (*SnmpConfig) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{2}
}
func (x *SnmpConfig) GetEnabled() bool {
if x != nil {
return x.Enabled
}
return false
}
func (x *SnmpConfig) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *SnmpConfig) GetCommunity() string {
if x != nil {
return x.Community
}
return ""
}
func (x *SnmpConfig) GetPort() uint32 {
if x != nil {
return x.Port
}
return 0
}
func (x *SnmpConfig) GetTransport() string {
if x != nil {
return x.Transport
}
return ""
}
type Sensor struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
Oid string `protobuf:"bytes,3,opt,name=oid,proto3" json:"oid,omitempty"`
Divisor float64 `protobuf:"fixed64,4,opt,name=divisor,proto3" json:"divisor,omitempty"`
Unit string `protobuf:"bytes,5,opt,name=unit,proto3" json:"unit,omitempty"`
Metadata map[string]string `protobuf:"bytes,6,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Sensor) Reset() {
*x = Sensor{}
mi := &file_proto_agent_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Sensor) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Sensor) ProtoMessage() {}
func (x *Sensor) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[3]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Sensor.ProtoReflect.Descriptor instead.
func (*Sensor) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{3}
}
func (x *Sensor) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *Sensor) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *Sensor) GetOid() string {
if x != nil {
return x.Oid
}
return ""
}
func (x *Sensor) GetDivisor() float64 {
if x != nil {
return x.Divisor
}
return 0
}
func (x *Sensor) GetUnit() string {
if x != nil {
return x.Unit
}
return ""
}
func (x *Sensor) GetMetadata() map[string]string {
if x != nil {
return x.Metadata
}
return nil
}
type Interface struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
IfIndex uint32 `protobuf:"varint,2,opt,name=if_index,json=ifIndex,proto3" json:"if_index,omitempty"`
IfName string `protobuf:"bytes,3,opt,name=if_name,json=ifName,proto3" json:"if_name,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Interface) Reset() {
*x = Interface{}
mi := &file_proto_agent_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Interface) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Interface) ProtoMessage() {}
func (x *Interface) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[4]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Interface.ProtoReflect.Descriptor instead.
func (*Interface) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{4}
}
func (x *Interface) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *Interface) GetIfIndex() uint32 {
if x != nil {
return x.IfIndex
}
return 0
}
func (x *Interface) GetIfName() string {
if x != nil {
return x.IfName
}
return ""
}
// Metrics submitted to the API
type MetricBatch struct {
state protoimpl.MessageState `protogen:"open.v1"`
Metrics []*Metric `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *MetricBatch) Reset() {
*x = MetricBatch{}
mi := &file_proto_agent_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *MetricBatch) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MetricBatch) ProtoMessage() {}
func (x *MetricBatch) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[5]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MetricBatch.ProtoReflect.Descriptor instead.
func (*MetricBatch) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{5}
}
func (x *MetricBatch) GetMetrics() []*Metric {
if x != nil {
return x.Metrics
}
return nil
}
type Metric struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to MetricType:
//
// *Metric_SensorReading
// *Metric_InterfaceStat
// *Metric_NeighborDiscovery
// *Metric_MonitoringCheck
// *Metric_CheckResult
MetricType isMetric_MetricType `protobuf_oneof:"metric_type"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Metric) Reset() {
*x = Metric{}
mi := &file_proto_agent_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Metric) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Metric) ProtoMessage() {}
func (x *Metric) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[6]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Metric.ProtoReflect.Descriptor instead.
func (*Metric) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{6}
}
func (x *Metric) GetMetricType() isMetric_MetricType {
if x != nil {
return x.MetricType
}
return nil
}
func (x *Metric) GetSensorReading() *SensorReading {
if x != nil {
if x, ok := x.MetricType.(*Metric_SensorReading); ok {
return x.SensorReading
}
}
return nil
}
func (x *Metric) GetInterfaceStat() *InterfaceStat {
if x != nil {
if x, ok := x.MetricType.(*Metric_InterfaceStat); ok {
return x.InterfaceStat
}
}
return nil
}
func (x *Metric) GetNeighborDiscovery() *NeighborDiscovery {
if x != nil {
if x, ok := x.MetricType.(*Metric_NeighborDiscovery); ok {
return x.NeighborDiscovery
}
}
return nil
}
func (x *Metric) GetMonitoringCheck() *MonitoringCheck {
if x != nil {
if x, ok := x.MetricType.(*Metric_MonitoringCheck); ok {
return x.MonitoringCheck
}
}
return nil
}
func (x *Metric) GetCheckResult() *CheckResult {
if x != nil {
if x, ok := x.MetricType.(*Metric_CheckResult); ok {
return x.CheckResult
}
}
return nil
}
type isMetric_MetricType interface {
isMetric_MetricType()
}
type Metric_SensorReading struct {
SensorReading *SensorReading `protobuf:"bytes,1,opt,name=sensor_reading,json=sensorReading,proto3,oneof"`
}
type Metric_InterfaceStat struct {
InterfaceStat *InterfaceStat `protobuf:"bytes,2,opt,name=interface_stat,json=interfaceStat,proto3,oneof"`
}
type Metric_NeighborDiscovery struct {
NeighborDiscovery *NeighborDiscovery `protobuf:"bytes,3,opt,name=neighbor_discovery,json=neighborDiscovery,proto3,oneof"`
}
type Metric_MonitoringCheck struct {
MonitoringCheck *MonitoringCheck `protobuf:"bytes,4,opt,name=monitoring_check,json=monitoringCheck,proto3,oneof"`
}
type Metric_CheckResult struct {
CheckResult *CheckResult `protobuf:"bytes,5,opt,name=check_result,json=checkResult,proto3,oneof"` // Service check results (HTTP/TCP/DNS)
}
func (*Metric_SensorReading) isMetric_MetricType() {}
func (*Metric_InterfaceStat) isMetric_MetricType() {}
func (*Metric_NeighborDiscovery) isMetric_MetricType() {}
func (*Metric_MonitoringCheck) isMetric_MetricType() {}
func (*Metric_CheckResult) isMetric_MetricType() {}
type SensorReading struct {
state protoimpl.MessageState `protogen:"open.v1"`
SensorId string `protobuf:"bytes,1,opt,name=sensor_id,json=sensorId,proto3" json:"sensor_id,omitempty"`
Value float64 `protobuf:"fixed64,2,opt,name=value,proto3" json:"value,omitempty"`
Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // Unix timestamp in seconds
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SensorReading) Reset() {
*x = SensorReading{}
mi := &file_proto_agent_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SensorReading) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SensorReading) ProtoMessage() {}
func (x *SensorReading) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[7]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SensorReading.ProtoReflect.Descriptor instead.
func (*SensorReading) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{7}
}
func (x *SensorReading) GetSensorId() string {
if x != nil {
return x.SensorId
}
return ""
}
func (x *SensorReading) GetValue() float64 {
if x != nil {
return x.Value
}
return 0
}
func (x *SensorReading) GetStatus() string {
if x != nil {
return x.Status
}
return ""
}
func (x *SensorReading) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type InterfaceStat struct {
state protoimpl.MessageState `protogen:"open.v1"`
InterfaceId string `protobuf:"bytes,1,opt,name=interface_id,json=interfaceId,proto3" json:"interface_id,omitempty"`
IfInOctets int64 `protobuf:"varint,2,opt,name=if_in_octets,json=ifInOctets,proto3" json:"if_in_octets,omitempty"`
IfOutOctets int64 `protobuf:"varint,3,opt,name=if_out_octets,json=ifOutOctets,proto3" json:"if_out_octets,omitempty"`
IfInErrors int64 `protobuf:"varint,4,opt,name=if_in_errors,json=ifInErrors,proto3" json:"if_in_errors,omitempty"`
IfOutErrors int64 `protobuf:"varint,5,opt,name=if_out_errors,json=ifOutErrors,proto3" json:"if_out_errors,omitempty"`
IfInDiscards int64 `protobuf:"varint,6,opt,name=if_in_discards,json=ifInDiscards,proto3" json:"if_in_discards,omitempty"`
IfOutDiscards int64 `protobuf:"varint,7,opt,name=if_out_discards,json=ifOutDiscards,proto3" json:"if_out_discards,omitempty"`
Timestamp int64 `protobuf:"varint,8,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // Unix timestamp in seconds
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *InterfaceStat) Reset() {
*x = InterfaceStat{}
mi := &file_proto_agent_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *InterfaceStat) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InterfaceStat) ProtoMessage() {}
func (x *InterfaceStat) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[8]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use InterfaceStat.ProtoReflect.Descriptor instead.
func (*InterfaceStat) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{8}
}
func (x *InterfaceStat) GetInterfaceId() string {
if x != nil {
return x.InterfaceId
}
return ""
}
func (x *InterfaceStat) GetIfInOctets() int64 {
if x != nil {
return x.IfInOctets
}
return 0
}
func (x *InterfaceStat) GetIfOutOctets() int64 {
if x != nil {
return x.IfOutOctets
}
return 0
}
func (x *InterfaceStat) GetIfInErrors() int64 {
if x != nil {
return x.IfInErrors
}
return 0
}
func (x *InterfaceStat) GetIfOutErrors() int64 {
if x != nil {
return x.IfOutErrors
}
return 0
}
func (x *InterfaceStat) GetIfInDiscards() int64 {
if x != nil {
return x.IfInDiscards
}
return 0
}
func (x *InterfaceStat) GetIfOutDiscards() int64 {
if x != nil {
return x.IfOutDiscards
}
return 0
}
func (x *InterfaceStat) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type NeighborDiscovery struct {
state protoimpl.MessageState `protogen:"open.v1"`
InterfaceId string `protobuf:"bytes,1,opt,name=interface_id,json=interfaceId,proto3" json:"interface_id,omitempty"`
Protocol string `protobuf:"bytes,2,opt,name=protocol,proto3" json:"protocol,omitempty"` // "lldp" or "cdp"
RemoteChassisId string `protobuf:"bytes,3,opt,name=remote_chassis_id,json=remoteChassisId,proto3" json:"remote_chassis_id,omitempty"`
RemoteSystemName string `protobuf:"bytes,4,opt,name=remote_system_name,json=remoteSystemName,proto3" json:"remote_system_name,omitempty"`
RemoteSystemDescription string `protobuf:"bytes,5,opt,name=remote_system_description,json=remoteSystemDescription,proto3" json:"remote_system_description,omitempty"`
RemotePlatform string `protobuf:"bytes,6,opt,name=remote_platform,json=remotePlatform,proto3" json:"remote_platform,omitempty"`
RemotePortId string `protobuf:"bytes,7,opt,name=remote_port_id,json=remotePortId,proto3" json:"remote_port_id,omitempty"`
RemotePortDescription string `protobuf:"bytes,8,opt,name=remote_port_description,json=remotePortDescription,proto3" json:"remote_port_description,omitempty"`
RemoteAddress string `protobuf:"bytes,9,opt,name=remote_address,json=remoteAddress,proto3" json:"remote_address,omitempty"`
RemoteCapabilities []string `protobuf:"bytes,10,rep,name=remote_capabilities,json=remoteCapabilities,proto3" json:"remote_capabilities,omitempty"`
Timestamp int64 `protobuf:"varint,11,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // Unix timestamp in seconds
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *NeighborDiscovery) Reset() {
*x = NeighborDiscovery{}
mi := &file_proto_agent_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *NeighborDiscovery) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NeighborDiscovery) ProtoMessage() {}
func (x *NeighborDiscovery) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[9]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use NeighborDiscovery.ProtoReflect.Descriptor instead.
func (*NeighborDiscovery) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{9}
}
func (x *NeighborDiscovery) GetInterfaceId() string {
if x != nil {
return x.InterfaceId
}
return ""
}
func (x *NeighborDiscovery) GetProtocol() string {
if x != nil {
return x.Protocol
}
return ""
}
func (x *NeighborDiscovery) GetRemoteChassisId() string {
if x != nil {
return x.RemoteChassisId
}
return ""
}
func (x *NeighborDiscovery) GetRemoteSystemName() string {
if x != nil {
return x.RemoteSystemName
}
return ""
}
func (x *NeighborDiscovery) GetRemoteSystemDescription() string {
if x != nil {
return x.RemoteSystemDescription
}
return ""
}
func (x *NeighborDiscovery) GetRemotePlatform() string {
if x != nil {
return x.RemotePlatform
}
return ""
}
func (x *NeighborDiscovery) GetRemotePortId() string {
if x != nil {
return x.RemotePortId
}
return ""
}
func (x *NeighborDiscovery) GetRemotePortDescription() string {
if x != nil {
return x.RemotePortDescription
}
return ""
}
func (x *NeighborDiscovery) GetRemoteAddress() string {
if x != nil {
return x.RemoteAddress
}
return ""
}
func (x *NeighborDiscovery) GetRemoteCapabilities() []string {
if x != nil {
return x.RemoteCapabilities
}
return nil
}
func (x *NeighborDiscovery) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type MonitoringCheck struct {
state protoimpl.MessageState `protogen:"open.v1"`
DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` // "success" or "failure"
ResponseTimeMs float64 `protobuf:"fixed64,3,opt,name=response_time_ms,json=responseTimeMs,proto3" json:"response_time_ms,omitempty"` // Optional - only present on success
Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // Unix timestamp in seconds
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *MonitoringCheck) Reset() {
*x = MonitoringCheck{}
mi := &file_proto_agent_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *MonitoringCheck) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MonitoringCheck) ProtoMessage() {}
func (x *MonitoringCheck) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[10]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MonitoringCheck.ProtoReflect.Descriptor instead.
func (*MonitoringCheck) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{10}
}
func (x *MonitoringCheck) GetDeviceId() string {
if x != nil {
return x.DeviceId
}
return ""
}
func (x *MonitoringCheck) GetStatus() string {
if x != nil {
return x.Status
}
return ""
}
func (x *MonitoringCheck) GetResponseTimeMs() float64 {
if x != nil {
return x.ResponseTimeMs
}
return 0
}
func (x *MonitoringCheck) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type Check struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
CheckType string `protobuf:"bytes,2,opt,name=check_type,json=checkType,proto3" json:"check_type,omitempty"` // "http", "tcp", "dns", "ssl"
IntervalSeconds uint32 `protobuf:"varint,3,opt,name=interval_seconds,json=intervalSeconds,proto3" json:"interval_seconds,omitempty"`
TimeoutMs uint32 `protobuf:"varint,4,opt,name=timeout_ms,json=timeoutMs,proto3" json:"timeout_ms,omitempty"`
// Type-specific config (JSON from Phoenix config field)
//
// Types that are valid to be assigned to Config:
//
// *Check_Http
// *Check_Tcp
// *Check_Dns
// *Check_Ssl
Config isCheck_Config `protobuf_oneof:"config"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Check) Reset() {
*x = Check{}
mi := &file_proto_agent_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Check) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Check) ProtoMessage() {}
func (x *Check) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[11]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Check.ProtoReflect.Descriptor instead.
func (*Check) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{11}
}
func (x *Check) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *Check) GetCheckType() string {
if x != nil {
return x.CheckType
}
return ""
}
func (x *Check) GetIntervalSeconds() uint32 {
if x != nil {
return x.IntervalSeconds
}
return 0
}
func (x *Check) GetTimeoutMs() uint32 {
if x != nil {
return x.TimeoutMs
}
return 0
}
func (x *Check) GetConfig() isCheck_Config {
if x != nil {
return x.Config
}
return nil
}
func (x *Check) GetHttp() *HttpCheckConfig {
if x != nil {
if x, ok := x.Config.(*Check_Http); ok {
return x.Http
}
}
return nil
}
func (x *Check) GetTcp() *TcpCheckConfig {
if x != nil {
if x, ok := x.Config.(*Check_Tcp); ok {
return x.Tcp
}
}
return nil
}
func (x *Check) GetDns() *DnsCheckConfig {
if x != nil {
if x, ok := x.Config.(*Check_Dns); ok {
return x.Dns
}
}
return nil
}
func (x *Check) GetSsl() *SslCheckConfig {
if x != nil {
if x, ok := x.Config.(*Check_Ssl); ok {
return x.Ssl
}
}
return nil
}
type isCheck_Config interface {
isCheck_Config()
}
type Check_Http struct {
Http *HttpCheckConfig `protobuf:"bytes,5,opt,name=http,proto3,oneof"`
}
type Check_Tcp struct {
Tcp *TcpCheckConfig `protobuf:"bytes,6,opt,name=tcp,proto3,oneof"`
}
type Check_Dns struct {
Dns *DnsCheckConfig `protobuf:"bytes,7,opt,name=dns,proto3,oneof"`
}
type Check_Ssl struct {
Ssl *SslCheckConfig `protobuf:"bytes,8,opt,name=ssl,proto3,oneof"`
}
func (*Check_Http) isCheck_Config() {}
func (*Check_Tcp) isCheck_Config() {}
func (*Check_Dns) isCheck_Config() {}
func (*Check_Ssl) isCheck_Config() {}
type HttpCheckConfig struct {
state protoimpl.MessageState `protogen:"open.v1"`
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"` // GET, POST, etc.
ExpectedStatus uint32 `protobuf:"varint,3,opt,name=expected_status,json=expectedStatus,proto3" json:"expected_status,omitempty"`
VerifySsl bool `protobuf:"varint,4,opt,name=verify_ssl,json=verifySsl,proto3" json:"verify_ssl,omitempty"`
Headers map[string]string `protobuf:"bytes,5,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
Body string `protobuf:"bytes,6,opt,name=body,proto3" json:"body,omitempty"`
Regex string `protobuf:"bytes,7,opt,name=regex,proto3" json:"regex,omitempty"` // Content match regex
FollowRedirects bool `protobuf:"varint,8,opt,name=follow_redirects,json=followRedirects,proto3" json:"follow_redirects,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *HttpCheckConfig) Reset() {
*x = HttpCheckConfig{}
mi := &file_proto_agent_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *HttpCheckConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HttpCheckConfig) ProtoMessage() {}
func (x *HttpCheckConfig) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[12]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HttpCheckConfig.ProtoReflect.Descriptor instead.
func (*HttpCheckConfig) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{12}
}
func (x *HttpCheckConfig) GetUrl() string {
if x != nil {
return x.Url
}
return ""
}
func (x *HttpCheckConfig) GetMethod() string {
if x != nil {
return x.Method
}
return ""
}
func (x *HttpCheckConfig) GetExpectedStatus() uint32 {
if x != nil {
return x.ExpectedStatus
}
return 0
}
func (x *HttpCheckConfig) GetVerifySsl() bool {
if x != nil {
return x.VerifySsl
}
return false
}
func (x *HttpCheckConfig) GetHeaders() map[string]string {
if x != nil {
return x.Headers
}
return nil
}
func (x *HttpCheckConfig) GetBody() string {
if x != nil {
return x.Body
}
return ""
}
func (x *HttpCheckConfig) GetRegex() string {
if x != nil {
return x.Regex
}
return ""
}
func (x *HttpCheckConfig) GetFollowRedirects() bool {
if x != nil {
return x.FollowRedirects
}
return false
}
type TcpCheckConfig struct {
state protoimpl.MessageState `protogen:"open.v1"`
Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
Send string `protobuf:"bytes,3,opt,name=send,proto3" json:"send,omitempty"` // Data to send after connection
Expect string `protobuf:"bytes,4,opt,name=expect,proto3" json:"expect,omitempty"` // Expected response
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TcpCheckConfig) Reset() {
*x = TcpCheckConfig{}
mi := &file_proto_agent_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TcpCheckConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TcpCheckConfig) ProtoMessage() {}
func (x *TcpCheckConfig) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[13]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TcpCheckConfig.ProtoReflect.Descriptor instead.
func (*TcpCheckConfig) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{13}
}
func (x *TcpCheckConfig) GetHost() string {
if x != nil {
return x.Host
}
return ""
}
func (x *TcpCheckConfig) GetPort() uint32 {
if x != nil {
return x.Port
}
return 0
}
func (x *TcpCheckConfig) GetSend() string {
if x != nil {
return x.Send
}
return ""
}
func (x *TcpCheckConfig) GetExpect() string {
if x != nil {
return x.Expect
}
return ""
}
type DnsCheckConfig struct {
state protoimpl.MessageState `protogen:"open.v1"`
Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
Server string `protobuf:"bytes,2,opt,name=server,proto3" json:"server,omitempty"` // DNS server (optional)
RecordType string `protobuf:"bytes,3,opt,name=record_type,json=recordType,proto3" json:"record_type,omitempty"` // A, AAAA, CNAME, MX, TXT
Expected string `protobuf:"bytes,4,opt,name=expected,proto3" json:"expected,omitempty"` // Expected result (optional)
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *DnsCheckConfig) Reset() {
*x = DnsCheckConfig{}
mi := &file_proto_agent_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DnsCheckConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DnsCheckConfig) ProtoMessage() {}
func (x *DnsCheckConfig) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[14]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DnsCheckConfig.ProtoReflect.Descriptor instead.
func (*DnsCheckConfig) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{14}
}
func (x *DnsCheckConfig) GetHostname() string {
if x != nil {
return x.Hostname
}
return ""
}
func (x *DnsCheckConfig) GetServer() string {
if x != nil {
return x.Server
}
return ""
}
func (x *DnsCheckConfig) GetRecordType() string {
if x != nil {
return x.RecordType
}
return ""
}
func (x *DnsCheckConfig) GetExpected() string {
if x != nil {
return x.Expected
}
return ""
}
type SslCheckConfig struct {
state protoimpl.MessageState `protogen:"open.v1"`
Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"` // default 443
WarningDays uint32 `protobuf:"varint,3,opt,name=warning_days,json=warningDays,proto3" json:"warning_days,omitempty"` // alert if expires within this many days
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SslCheckConfig) Reset() {
*x = SslCheckConfig{}
mi := &file_proto_agent_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SslCheckConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SslCheckConfig) ProtoMessage() {}
func (x *SslCheckConfig) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[15]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SslCheckConfig.ProtoReflect.Descriptor instead.
func (*SslCheckConfig) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{15}
}
func (x *SslCheckConfig) GetHost() string {
if x != nil {
return x.Host
}
return ""
}
func (x *SslCheckConfig) GetPort() uint32 {
if x != nil {
return x.Port
}
return 0
}
func (x *SslCheckConfig) GetWarningDays() uint32 {
if x != nil {
return x.WarningDays
}
return 0
}
type CheckResult struct {
state protoimpl.MessageState `protogen:"open.v1"`
CheckId string `protobuf:"bytes,1,opt,name=check_id,json=checkId,proto3" json:"check_id,omitempty"`
Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"` // 0=OK, 1=WARNING, 2=CRITICAL, 3=UNKNOWN
Output string `protobuf:"bytes,3,opt,name=output,proto3" json:"output,omitempty"`
ResponseTimeMs float64 `protobuf:"fixed64,4,opt,name=response_time_ms,json=responseTimeMs,proto3" json:"response_time_ms,omitempty"`
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // Unix timestamp in seconds
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CheckResult) Reset() {
*x = CheckResult{}
mi := &file_proto_agent_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CheckResult) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CheckResult) ProtoMessage() {}
func (x *CheckResult) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[16]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CheckResult.ProtoReflect.Descriptor instead.
func (*CheckResult) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{16}
}
func (x *CheckResult) GetCheckId() string {
if x != nil {
return x.CheckId
}
return ""
}
func (x *CheckResult) GetStatus() uint32 {
if x != nil {
return x.Status
}
return 0
}
func (x *CheckResult) GetOutput() string {
if x != nil {
return x.Output
}
return ""
}
func (x *CheckResult) GetResponseTimeMs() float64 {
if x != nil {
return x.ResponseTimeMs
}
return 0
}
func (x *CheckResult) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type CheckList struct {
state protoimpl.MessageState `protogen:"open.v1"`
Checks []*Check `protobuf:"bytes,1,rep,name=checks,proto3" json:"checks,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CheckList) Reset() {
*x = CheckList{}
mi := &file_proto_agent_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CheckList) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CheckList) ProtoMessage() {}
func (x *CheckList) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[17]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CheckList.ProtoReflect.Descriptor instead.
func (*CheckList) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{17}
}
func (x *CheckList) GetChecks() []*Check {
if x != nil {
return x.Checks
}
return nil
}
// Heartbeat metadata
type HeartbeatMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"`
UptimeSeconds uint64 `protobuf:"varint,3,opt,name=uptime_seconds,json=uptimeSeconds,proto3" json:"uptime_seconds,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *HeartbeatMetadata) Reset() {
*x = HeartbeatMetadata{}
mi := &file_proto_agent_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *HeartbeatMetadata) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HeartbeatMetadata) ProtoMessage() {}
func (x *HeartbeatMetadata) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[18]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HeartbeatMetadata.ProtoReflect.Descriptor instead.
func (*HeartbeatMetadata) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{18}
}
func (x *HeartbeatMetadata) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *HeartbeatMetadata) GetHostname() string {
if x != nil {
return x.Hostname
}
return ""
}
func (x *HeartbeatMetadata) GetUptimeSeconds() uint64 {
if x != nil {
return x.UptimeSeconds
}
return 0
}
type HeartbeatResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *HeartbeatResponse) Reset() {
*x = HeartbeatResponse{}
mi := &file_proto_agent_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *HeartbeatResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HeartbeatResponse) ProtoMessage() {}
func (x *HeartbeatResponse) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[19]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HeartbeatResponse.ProtoReflect.Descriptor instead.
func (*HeartbeatResponse) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{19}
}
func (x *HeartbeatResponse) GetStatus() string {
if x != nil {
return x.Status
}
return ""
}
type AgentJobList struct {
state protoimpl.MessageState `protogen:"open.v1"`
Jobs []*AgentJob `protobuf:"bytes,1,rep,name=jobs,proto3" json:"jobs,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AgentJobList) Reset() {
*x = AgentJobList{}
mi := &file_proto_agent_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AgentJobList) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AgentJobList) ProtoMessage() {}
func (x *AgentJobList) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[20]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AgentJobList.ProtoReflect.Descriptor instead.
func (*AgentJobList) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{20}
}
func (x *AgentJobList) GetJobs() []*AgentJob {
if x != nil {
return x.Jobs
}
return nil
}
type AgentJob struct {
state protoimpl.MessageState `protogen:"open.v1"`
JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"`
JobType JobType `protobuf:"varint,2,opt,name=job_type,json=jobType,proto3,enum=towerops.agent.JobType" json:"job_type,omitempty"`
DeviceId string `protobuf:"bytes,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
SnmpDevice *SnmpDevice `protobuf:"bytes,4,opt,name=snmp_device,json=snmpDevice,proto3" json:"snmp_device,omitempty"`
Queries []*SnmpQuery `protobuf:"bytes,5,rep,name=queries,proto3" json:"queries,omitempty"`
MikrotikDevice *MikrotikDevice `protobuf:"bytes,6,opt,name=mikrotik_device,json=mikrotikDevice,proto3" json:"mikrotik_device,omitempty"`
MikrotikCommands []*MikrotikCommand `protobuf:"bytes,7,rep,name=mikrotik_commands,json=mikrotikCommands,proto3" json:"mikrotik_commands,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AgentJob) Reset() {
*x = AgentJob{}
mi := &file_proto_agent_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AgentJob) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AgentJob) ProtoMessage() {}
func (x *AgentJob) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[21]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AgentJob.ProtoReflect.Descriptor instead.
func (*AgentJob) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{21}
}
func (x *AgentJob) GetJobId() string {
if x != nil {
return x.JobId
}
return ""
}
func (x *AgentJob) GetJobType() JobType {
if x != nil {
return x.JobType
}
return JobType_DISCOVER
}
func (x *AgentJob) GetDeviceId() string {
if x != nil {
return x.DeviceId
}
return ""
}
func (x *AgentJob) GetSnmpDevice() *SnmpDevice {
if x != nil {
return x.SnmpDevice
}
return nil
}
func (x *AgentJob) GetQueries() []*SnmpQuery {
if x != nil {
return x.Queries
}
return nil
}
func (x *AgentJob) GetMikrotikDevice() *MikrotikDevice {
if x != nil {
return x.MikrotikDevice
}
return nil
}
func (x *AgentJob) GetMikrotikCommands() []*MikrotikCommand {
if x != nil {
return x.MikrotikCommands
}
return nil
}
type SnmpDevice struct {
state protoimpl.MessageState `protogen:"open.v1"`
Ip string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`
Community string `protobuf:"bytes,2,opt,name=community,proto3" json:"community,omitempty"` // v1/v2c only (deprecated for v3)
Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty"`
Port uint32 `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"`
// SNMPv3 credentials (optional, backward compatible)
V3SecurityLevel string `protobuf:"bytes,5,opt,name=v3_security_level,json=v3SecurityLevel,proto3" json:"v3_security_level,omitempty"` // "noAuthNoPriv" | "authNoPriv" | "authPriv"
V3Username string `protobuf:"bytes,6,opt,name=v3_username,json=v3Username,proto3" json:"v3_username,omitempty"`
V3AuthProtocol string `protobuf:"bytes,7,opt,name=v3_auth_protocol,json=v3AuthProtocol,proto3" json:"v3_auth_protocol,omitempty"` // "MD5" | "SHA" | "SHA-256" | etc.
V3AuthPassword string `protobuf:"bytes,8,opt,name=v3_auth_password,json=v3AuthPassword,proto3" json:"v3_auth_password,omitempty"` // Decrypted before sending
V3PrivProtocol string `protobuf:"bytes,9,opt,name=v3_priv_protocol,json=v3PrivProtocol,proto3" json:"v3_priv_protocol,omitempty"` // "DES" | "AES" | "AES-256" | etc.
V3PrivPassword string `protobuf:"bytes,10,opt,name=v3_priv_password,json=v3PrivPassword,proto3" json:"v3_priv_password,omitempty"` // Decrypted before sending
Transport string `protobuf:"bytes,11,opt,name=transport,proto3" json:"transport,omitempty"` // "udp" | "tcp"
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SnmpDevice) Reset() {
*x = SnmpDevice{}
mi := &file_proto_agent_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SnmpDevice) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SnmpDevice) ProtoMessage() {}
func (x *SnmpDevice) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[22]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SnmpDevice.ProtoReflect.Descriptor instead.
func (*SnmpDevice) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{22}
}
func (x *SnmpDevice) GetIp() string {
if x != nil {
return x.Ip
}
return ""
}
func (x *SnmpDevice) GetCommunity() string {
if x != nil {
return x.Community
}
return ""
}
func (x *SnmpDevice) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *SnmpDevice) GetPort() uint32 {
if x != nil {
return x.Port
}
return 0
}
func (x *SnmpDevice) GetV3SecurityLevel() string {
if x != nil {
return x.V3SecurityLevel
}
return ""
}
func (x *SnmpDevice) GetV3Username() string {
if x != nil {
return x.V3Username
}
return ""
}
func (x *SnmpDevice) GetV3AuthProtocol() string {
if x != nil {
return x.V3AuthProtocol
}
return ""
}
func (x *SnmpDevice) GetV3AuthPassword() string {
if x != nil {
return x.V3AuthPassword
}
return ""
}
func (x *SnmpDevice) GetV3PrivProtocol() string {
if x != nil {
return x.V3PrivProtocol
}
return ""
}
func (x *SnmpDevice) GetV3PrivPassword() string {
if x != nil {
return x.V3PrivPassword
}
return ""
}
func (x *SnmpDevice) GetTransport() string {
if x != nil {
return x.Transport
}
return ""
}
type SnmpQuery struct {
state protoimpl.MessageState `protogen:"open.v1"`
QueryType QueryType `protobuf:"varint,1,opt,name=query_type,json=queryType,proto3,enum=towerops.agent.QueryType" json:"query_type,omitempty"`
Oids []string `protobuf:"bytes,2,rep,name=oids,proto3" json:"oids,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SnmpQuery) Reset() {
*x = SnmpQuery{}
mi := &file_proto_agent_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SnmpQuery) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SnmpQuery) ProtoMessage() {}
func (x *SnmpQuery) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[23]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SnmpQuery.ProtoReflect.Descriptor instead.
func (*SnmpQuery) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{23}
}
func (x *SnmpQuery) GetQueryType() QueryType {
if x != nil {
return x.QueryType
}
return QueryType_GET
}
func (x *SnmpQuery) GetOids() []string {
if x != nil {
return x.Oids
}
return nil
}
type SnmpResult struct {
state protoimpl.MessageState `protogen:"open.v1"`
DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
JobType JobType `protobuf:"varint,2,opt,name=job_type,json=jobType,proto3,enum=towerops.agent.JobType" json:"job_type,omitempty"`
OidValues map[string]string `protobuf:"bytes,3,rep,name=oid_values,json=oidValues,proto3" json:"oid_values,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
JobId string `protobuf:"bytes,5,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SnmpResult) Reset() {
*x = SnmpResult{}
mi := &file_proto_agent_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SnmpResult) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SnmpResult) ProtoMessage() {}
func (x *SnmpResult) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[24]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SnmpResult.ProtoReflect.Descriptor instead.
func (*SnmpResult) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{24}
}
func (x *SnmpResult) GetDeviceId() string {
if x != nil {
return x.DeviceId
}
return ""
}
func (x *SnmpResult) GetJobType() JobType {
if x != nil {
return x.JobType
}
return JobType_DISCOVER
}
func (x *SnmpResult) GetOidValues() map[string]string {
if x != nil {
return x.OidValues
}
return nil
}
func (x *SnmpResult) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
func (x *SnmpResult) GetJobId() string {
if x != nil {
return x.JobId
}
return ""
}
type AgentHeartbeat struct {
state protoimpl.MessageState `protogen:"open.v1"`
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"`
UptimeSeconds uint64 `protobuf:"varint,3,opt,name=uptime_seconds,json=uptimeSeconds,proto3" json:"uptime_seconds,omitempty"`
IpAddress string `protobuf:"bytes,4,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
Arch string `protobuf:"bytes,5,opt,name=arch,proto3" json:"arch,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AgentHeartbeat) Reset() {
*x = AgentHeartbeat{}
mi := &file_proto_agent_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AgentHeartbeat) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AgentHeartbeat) ProtoMessage() {}
func (x *AgentHeartbeat) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[25]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AgentHeartbeat.ProtoReflect.Descriptor instead.
func (*AgentHeartbeat) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{25}
}
func (x *AgentHeartbeat) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *AgentHeartbeat) GetHostname() string {
if x != nil {
return x.Hostname
}
return ""
}
func (x *AgentHeartbeat) GetUptimeSeconds() uint64 {
if x != nil {
return x.UptimeSeconds
}
return 0
}
func (x *AgentHeartbeat) GetIpAddress() string {
if x != nil {
return x.IpAddress
}
return ""
}
func (x *AgentHeartbeat) GetArch() string {
if x != nil {
return x.Arch
}
return ""
}
type AgentError struct {
state protoimpl.MessageState `protogen:"open.v1"`
DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
JobId string `protobuf:"bytes,2,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"`
Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AgentError) Reset() {
*x = AgentError{}
mi := &file_proto_agent_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AgentError) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AgentError) ProtoMessage() {}
func (x *AgentError) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[26]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AgentError.ProtoReflect.Descriptor instead.
func (*AgentError) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{26}
}
func (x *AgentError) GetDeviceId() string {
if x != nil {
return x.DeviceId
}
return ""
}
func (x *AgentError) GetJobId() string {
if x != nil {
return x.JobId
}
return ""
}
func (x *AgentError) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
func (x *AgentError) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type CredentialTestResult struct {
state protoimpl.MessageState `protogen:"open.v1"`
TestId string `protobuf:"bytes,1,opt,name=test_id,json=testId,proto3" json:"test_id,omitempty"`
Success bool `protobuf:"varint,2,opt,name=success,proto3" json:"success,omitempty"`
ErrorMessage string `protobuf:"bytes,3,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` // Empty if success
SystemDescription string `protobuf:"bytes,4,opt,name=system_description,json=systemDescription,proto3" json:"system_description,omitempty"` // sysDescr.0 value if success
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CredentialTestResult) Reset() {
*x = CredentialTestResult{}
mi := &file_proto_agent_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CredentialTestResult) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CredentialTestResult) ProtoMessage() {}
func (x *CredentialTestResult) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[27]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CredentialTestResult.ProtoReflect.Descriptor instead.
func (*CredentialTestResult) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{27}
}
func (x *CredentialTestResult) GetTestId() string {
if x != nil {
return x.TestId
}
return ""
}
func (x *CredentialTestResult) GetSuccess() bool {
if x != nil {
return x.Success
}
return false
}
func (x *CredentialTestResult) GetErrorMessage() string {
if x != nil {
return x.ErrorMessage
}
return ""
}
func (x *CredentialTestResult) GetSystemDescription() string {
if x != nil {
return x.SystemDescription
}
return ""
}
func (x *CredentialTestResult) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type MikrotikDevice struct {
state protoimpl.MessageState `protogen:"open.v1"`
Ip string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`
Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"`
Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"`
UseSsl bool `protobuf:"varint,5,opt,name=use_ssl,json=useSsl,proto3" json:"use_ssl,omitempty"`
SshPort uint32 `protobuf:"varint,6,opt,name=ssh_port,json=sshPort,proto3" json:"ssh_port,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *MikrotikDevice) Reset() {
*x = MikrotikDevice{}
mi := &file_proto_agent_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *MikrotikDevice) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MikrotikDevice) ProtoMessage() {}
func (x *MikrotikDevice) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[28]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MikrotikDevice.ProtoReflect.Descriptor instead.
func (*MikrotikDevice) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{28}
}
func (x *MikrotikDevice) GetIp() string {
if x != nil {
return x.Ip
}
return ""
}
func (x *MikrotikDevice) GetPort() uint32 {
if x != nil {
return x.Port
}
return 0
}
func (x *MikrotikDevice) GetUsername() string {
if x != nil {
return x.Username
}
return ""
}
func (x *MikrotikDevice) GetPassword() string {
if x != nil {
return x.Password
}
return ""
}
func (x *MikrotikDevice) GetUseSsl() bool {
if x != nil {
return x.UseSsl
}
return false
}
func (x *MikrotikDevice) GetSshPort() uint32 {
if x != nil {
return x.SshPort
}
return 0
}
type MikrotikCommand struct {
state protoimpl.MessageState `protogen:"open.v1"`
Command string `protobuf:"bytes,1,opt,name=command,proto3" json:"command,omitempty"`
Args map[string]string `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *MikrotikCommand) Reset() {
*x = MikrotikCommand{}
mi := &file_proto_agent_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *MikrotikCommand) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MikrotikCommand) ProtoMessage() {}
func (x *MikrotikCommand) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[29]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MikrotikCommand.ProtoReflect.Descriptor instead.
func (*MikrotikCommand) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{29}
}
func (x *MikrotikCommand) GetCommand() string {
if x != nil {
return x.Command
}
return ""
}
func (x *MikrotikCommand) GetArgs() map[string]string {
if x != nil {
return x.Args
}
return nil
}
type MikrotikResult struct {
state protoimpl.MessageState `protogen:"open.v1"`
DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
JobId string `protobuf:"bytes,2,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"`
Sentences []*MikrotikSentence `protobuf:"bytes,3,rep,name=sentences,proto3" json:"sentences,omitempty"`
Error string `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"`
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *MikrotikResult) Reset() {
*x = MikrotikResult{}
mi := &file_proto_agent_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *MikrotikResult) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MikrotikResult) ProtoMessage() {}
func (x *MikrotikResult) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[30]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MikrotikResult.ProtoReflect.Descriptor instead.
func (*MikrotikResult) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{30}
}
func (x *MikrotikResult) GetDeviceId() string {
if x != nil {
return x.DeviceId
}
return ""
}
func (x *MikrotikResult) GetJobId() string {
if x != nil {
return x.JobId
}
return ""
}
func (x *MikrotikResult) GetSentences() []*MikrotikSentence {
if x != nil {
return x.Sentences
}
return nil
}
func (x *MikrotikResult) GetError() string {
if x != nil {
return x.Error
}
return ""
}
func (x *MikrotikResult) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type MikrotikSentence struct {
state protoimpl.MessageState `protogen:"open.v1"`
Attributes map[string]string `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *MikrotikSentence) Reset() {
*x = MikrotikSentence{}
mi := &file_proto_agent_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *MikrotikSentence) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MikrotikSentence) ProtoMessage() {}
func (x *MikrotikSentence) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[31]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MikrotikSentence.ProtoReflect.Descriptor instead.
func (*MikrotikSentence) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{31}
}
func (x *MikrotikSentence) GetAttributes() map[string]string {
if x != nil {
return x.Attributes
}
return nil
}
type LldpTopologyResult struct {
state protoimpl.MessageState `protogen:"open.v1"`
DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
JobId string `protobuf:"bytes,2,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"`
LocalSystemName string `protobuf:"bytes,3,opt,name=local_system_name,json=localSystemName,proto3" json:"local_system_name,omitempty"`
Neighbors []*LldpNeighbor `protobuf:"bytes,4,rep,name=neighbors,proto3" json:"neighbors,omitempty"`
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LldpTopologyResult) Reset() {
*x = LldpTopologyResult{}
mi := &file_proto_agent_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LldpTopologyResult) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LldpTopologyResult) ProtoMessage() {}
func (x *LldpTopologyResult) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[32]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LldpTopologyResult.ProtoReflect.Descriptor instead.
func (*LldpTopologyResult) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{32}
}
func (x *LldpTopologyResult) GetDeviceId() string {
if x != nil {
return x.DeviceId
}
return ""
}
func (x *LldpTopologyResult) GetJobId() string {
if x != nil {
return x.JobId
}
return ""
}
func (x *LldpTopologyResult) GetLocalSystemName() string {
if x != nil {
return x.LocalSystemName
}
return ""
}
func (x *LldpTopologyResult) GetNeighbors() []*LldpNeighbor {
if x != nil {
return x.Neighbors
}
return nil
}
func (x *LldpTopologyResult) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
type LldpNeighbor struct {
state protoimpl.MessageState `protogen:"open.v1"`
NeighborName string `protobuf:"bytes,1,opt,name=neighbor_name,json=neighborName,proto3" json:"neighbor_name,omitempty"`
LocalPort string `protobuf:"bytes,2,opt,name=local_port,json=localPort,proto3" json:"local_port,omitempty"`
RemotePort string `protobuf:"bytes,3,opt,name=remote_port,json=remotePort,proto3" json:"remote_port,omitempty"`
RemotePortId string `protobuf:"bytes,4,opt,name=remote_port_id,json=remotePortId,proto3" json:"remote_port_id,omitempty"`
ManagementAddresses []string `protobuf:"bytes,5,rep,name=management_addresses,json=managementAddresses,proto3" json:"management_addresses,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LldpNeighbor) Reset() {
*x = LldpNeighbor{}
mi := &file_proto_agent_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LldpNeighbor) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LldpNeighbor) ProtoMessage() {}
func (x *LldpNeighbor) ProtoReflect() protoreflect.Message {
mi := &file_proto_agent_proto_msgTypes[33]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LldpNeighbor.ProtoReflect.Descriptor instead.
func (*LldpNeighbor) Descriptor() ([]byte, []int) {
return file_proto_agent_proto_rawDescGZIP(), []int{33}
}
func (x *LldpNeighbor) GetNeighborName() string {
if x != nil {
return x.NeighborName
}
return ""
}
func (x *LldpNeighbor) GetLocalPort() string {
if x != nil {
return x.LocalPort
}
return ""
}
func (x *LldpNeighbor) GetRemotePort() string {
if x != nil {
return x.RemotePort
}
return ""
}
func (x *LldpNeighbor) GetRemotePortId() string {
if x != nil {
return x.RemotePortId
}
return ""
}
func (x *LldpNeighbor) GetManagementAddresses() []string {
if x != nil {
return x.ManagementAddresses
}
return nil
}
var File_proto_agent_proto protoreflect.FileDescriptor
const file_proto_agent_proto_rawDesc = "" +
"\n" +
"\x11proto/agent.proto\x12\x0etowerops.agent\"\xbc\x01\n" +
"\vAgentConfig\x12\x18\n" +
"\aversion\x18\x01 \x01(\tR\aversion\x122\n" +
"\x15poll_interval_seconds\x18\x02 \x01(\rR\x13pollIntervalSeconds\x120\n" +
"\adevices\x18\x03 \x03(\v2\x16.towerops.agent.DeviceR\adevices\x12-\n" +
"\x06checks\x18\x04 \x03(\v2\x15.towerops.agent.CheckR\x06checks\"\x81\x03\n" +
"\x06Device\x12\x0e\n" +
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
"\x04name\x18\x02 \x01(\tR\x04name\x12\x1d\n" +
"\n" +
"ip_address\x18\x03 \x01(\tR\tipAddress\x12.\n" +
"\x04snmp\x18\x04 \x01(\v2\x1a.towerops.agent.SnmpConfigR\x04snmp\x122\n" +
"\x15poll_interval_seconds\x18\x05 \x01(\rR\x13pollIntervalSeconds\x120\n" +
"\asensors\x18\x06 \x03(\v2\x16.towerops.agent.SensorR\asensors\x129\n" +
"\n" +
"interfaces\x18\a \x03(\v2\x19.towerops.agent.InterfaceR\n" +
"interfaces\x12-\n" +
"\x12monitoring_enabled\x18\b \x01(\bR\x11monitoringEnabled\x124\n" +
"\x16check_interval_seconds\x18\t \x01(\rR\x14checkIntervalSeconds\"\x90\x01\n" +
"\n" +
"SnmpConfig\x12\x18\n" +
"\aenabled\x18\x01 \x01(\bR\aenabled\x12\x18\n" +
"\aversion\x18\x02 \x01(\tR\aversion\x12\x1c\n" +
"\tcommunity\x18\x03 \x01(\tR\tcommunity\x12\x12\n" +
"\x04port\x18\x04 \x01(\rR\x04port\x12\x1c\n" +
"\ttransport\x18\x05 \x01(\tR\ttransport\"\xeb\x01\n" +
"\x06Sensor\x12\x0e\n" +
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
"\x04type\x18\x02 \x01(\tR\x04type\x12\x10\n" +
"\x03oid\x18\x03 \x01(\tR\x03oid\x12\x18\n" +
"\adivisor\x18\x04 \x01(\x01R\adivisor\x12\x12\n" +
"\x04unit\x18\x05 \x01(\tR\x04unit\x12@\n" +
"\bmetadata\x18\x06 \x03(\v2$.towerops.agent.Sensor.MetadataEntryR\bmetadata\x1a;\n" +
"\rMetadataEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"O\n" +
"\tInterface\x12\x0e\n" +
"\x02id\x18\x01 \x01(\tR\x02id\x12\x19\n" +
"\bif_index\x18\x02 \x01(\rR\aifIndex\x12\x17\n" +
"\aif_name\x18\x03 \x01(\tR\x06ifName\"?\n" +
"\vMetricBatch\x120\n" +
"\ametrics\x18\x01 \x03(\v2\x16.towerops.agent.MetricR\ametrics\"\x8b\x03\n" +
"\x06Metric\x12F\n" +
"\x0esensor_reading\x18\x01 \x01(\v2\x1d.towerops.agent.SensorReadingH\x00R\rsensorReading\x12F\n" +
"\x0einterface_stat\x18\x02 \x01(\v2\x1d.towerops.agent.InterfaceStatH\x00R\rinterfaceStat\x12R\n" +
"\x12neighbor_discovery\x18\x03 \x01(\v2!.towerops.agent.NeighborDiscoveryH\x00R\x11neighborDiscovery\x12L\n" +
"\x10monitoring_check\x18\x04 \x01(\v2\x1f.towerops.agent.MonitoringCheckH\x00R\x0fmonitoringCheck\x12@\n" +
"\fcheck_result\x18\x05 \x01(\v2\x1b.towerops.agent.CheckResultH\x00R\vcheckResultB\r\n" +
"\vmetric_type\"x\n" +
"\rSensorReading\x12\x1b\n" +
"\tsensor_id\x18\x01 \x01(\tR\bsensorId\x12\x14\n" +
"\x05value\x18\x02 \x01(\x01R\x05value\x12\x16\n" +
"\x06status\x18\x03 \x01(\tR\x06status\x12\x1c\n" +
"\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\"\xaa\x02\n" +
"\rInterfaceStat\x12!\n" +
"\finterface_id\x18\x01 \x01(\tR\vinterfaceId\x12 \n" +
"\fif_in_octets\x18\x02 \x01(\x03R\n" +
"ifInOctets\x12\"\n" +
"\rif_out_octets\x18\x03 \x01(\x03R\vifOutOctets\x12 \n" +
"\fif_in_errors\x18\x04 \x01(\x03R\n" +
"ifInErrors\x12\"\n" +
"\rif_out_errors\x18\x05 \x01(\x03R\vifOutErrors\x12$\n" +
"\x0eif_in_discards\x18\x06 \x01(\x03R\fifInDiscards\x12&\n" +
"\x0fif_out_discards\x18\a \x01(\x03R\rifOutDiscards\x12\x1c\n" +
"\ttimestamp\x18\b \x01(\x03R\ttimestamp\"\xe5\x03\n" +
"\x11NeighborDiscovery\x12!\n" +
"\finterface_id\x18\x01 \x01(\tR\vinterfaceId\x12\x1a\n" +
"\bprotocol\x18\x02 \x01(\tR\bprotocol\x12*\n" +
"\x11remote_chassis_id\x18\x03 \x01(\tR\x0fremoteChassisId\x12,\n" +
"\x12remote_system_name\x18\x04 \x01(\tR\x10remoteSystemName\x12:\n" +
"\x19remote_system_description\x18\x05 \x01(\tR\x17remoteSystemDescription\x12'\n" +
"\x0fremote_platform\x18\x06 \x01(\tR\x0eremotePlatform\x12$\n" +
"\x0eremote_port_id\x18\a \x01(\tR\fremotePortId\x126\n" +
"\x17remote_port_description\x18\b \x01(\tR\x15remotePortDescription\x12%\n" +
"\x0eremote_address\x18\t \x01(\tR\rremoteAddress\x12/\n" +
"\x13remote_capabilities\x18\n" +
" \x03(\tR\x12remoteCapabilities\x12\x1c\n" +
"\ttimestamp\x18\v \x01(\x03R\ttimestamp\"\x8e\x01\n" +
"\x0fMonitoringCheck\x12\x1b\n" +
"\tdevice_id\x18\x01 \x01(\tR\bdeviceId\x12\x16\n" +
"\x06status\x18\x02 \x01(\tR\x06status\x12(\n" +
"\x10response_time_ms\x18\x03 \x01(\x01R\x0eresponseTimeMs\x12\x1c\n" +
"\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\"\xdd\x02\n" +
"\x05Check\x12\x0e\n" +
"\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n" +
"\n" +
"check_type\x18\x02 \x01(\tR\tcheckType\x12)\n" +
"\x10interval_seconds\x18\x03 \x01(\rR\x0fintervalSeconds\x12\x1d\n" +
"\n" +
"timeout_ms\x18\x04 \x01(\rR\ttimeoutMs\x125\n" +
"\x04http\x18\x05 \x01(\v2\x1f.towerops.agent.HttpCheckConfigH\x00R\x04http\x122\n" +
"\x03tcp\x18\x06 \x01(\v2\x1e.towerops.agent.TcpCheckConfigH\x00R\x03tcp\x122\n" +
"\x03dns\x18\a \x01(\v2\x1e.towerops.agent.DnsCheckConfigH\x00R\x03dns\x122\n" +
"\x03ssl\x18\b \x01(\v2\x1e.towerops.agent.SslCheckConfigH\x00R\x03sslB\b\n" +
"\x06config\"\xdc\x02\n" +
"\x0fHttpCheckConfig\x12\x10\n" +
"\x03url\x18\x01 \x01(\tR\x03url\x12\x16\n" +
"\x06method\x18\x02 \x01(\tR\x06method\x12'\n" +
"\x0fexpected_status\x18\x03 \x01(\rR\x0eexpectedStatus\x12\x1d\n" +
"\n" +
"verify_ssl\x18\x04 \x01(\bR\tverifySsl\x12F\n" +
"\aheaders\x18\x05 \x03(\v2,.towerops.agent.HttpCheckConfig.HeadersEntryR\aheaders\x12\x12\n" +
"\x04body\x18\x06 \x01(\tR\x04body\x12\x14\n" +
"\x05regex\x18\a \x01(\tR\x05regex\x12)\n" +
"\x10follow_redirects\x18\b \x01(\bR\x0ffollowRedirects\x1a:\n" +
"\fHeadersEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"d\n" +
"\x0eTcpCheckConfig\x12\x12\n" +
"\x04host\x18\x01 \x01(\tR\x04host\x12\x12\n" +
"\x04port\x18\x02 \x01(\rR\x04port\x12\x12\n" +
"\x04send\x18\x03 \x01(\tR\x04send\x12\x16\n" +
"\x06expect\x18\x04 \x01(\tR\x06expect\"\x81\x01\n" +
"\x0eDnsCheckConfig\x12\x1a\n" +
"\bhostname\x18\x01 \x01(\tR\bhostname\x12\x16\n" +
"\x06server\x18\x02 \x01(\tR\x06server\x12\x1f\n" +
"\vrecord_type\x18\x03 \x01(\tR\n" +
"recordType\x12\x1a\n" +
"\bexpected\x18\x04 \x01(\tR\bexpected\"[\n" +
"\x0eSslCheckConfig\x12\x12\n" +
"\x04host\x18\x01 \x01(\tR\x04host\x12\x12\n" +
"\x04port\x18\x02 \x01(\rR\x04port\x12!\n" +
"\fwarning_days\x18\x03 \x01(\rR\vwarningDays\"\xa0\x01\n" +
"\vCheckResult\x12\x19\n" +
"\bcheck_id\x18\x01 \x01(\tR\acheckId\x12\x16\n" +
"\x06status\x18\x02 \x01(\rR\x06status\x12\x16\n" +
"\x06output\x18\x03 \x01(\tR\x06output\x12(\n" +
"\x10response_time_ms\x18\x04 \x01(\x01R\x0eresponseTimeMs\x12\x1c\n" +
"\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\":\n" +
"\tCheckList\x12-\n" +
"\x06checks\x18\x01 \x03(\v2\x15.towerops.agent.CheckR\x06checks\"p\n" +
"\x11HeartbeatMetadata\x12\x18\n" +
"\aversion\x18\x01 \x01(\tR\aversion\x12\x1a\n" +
"\bhostname\x18\x02 \x01(\tR\bhostname\x12%\n" +
"\x0euptime_seconds\x18\x03 \x01(\x04R\ruptimeSeconds\"+\n" +
"\x11HeartbeatResponse\x12\x16\n" +
"\x06status\x18\x01 \x01(\tR\x06status\"<\n" +
"\fAgentJobList\x12,\n" +
"\x04jobs\x18\x01 \x03(\v2\x18.towerops.agent.AgentJobR\x04jobs\"\xfb\x02\n" +
"\bAgentJob\x12\x15\n" +
"\x06job_id\x18\x01 \x01(\tR\x05jobId\x122\n" +
"\bjob_type\x18\x02 \x01(\x0e2\x17.towerops.agent.JobTypeR\ajobType\x12\x1b\n" +
"\tdevice_id\x18\x03 \x01(\tR\bdeviceId\x12;\n" +
"\vsnmp_device\x18\x04 \x01(\v2\x1a.towerops.agent.SnmpDeviceR\n" +
"snmpDevice\x123\n" +
"\aqueries\x18\x05 \x03(\v2\x19.towerops.agent.SnmpQueryR\aqueries\x12G\n" +
"\x0fmikrotik_device\x18\x06 \x01(\v2\x1e.towerops.agent.MikrotikDeviceR\x0emikrotikDevice\x12L\n" +
"\x11mikrotik_commands\x18\a \x03(\v2\x1f.towerops.agent.MikrotikCommandR\x10mikrotikCommands\"\xfb\x02\n" +
"\n" +
"SnmpDevice\x12\x0e\n" +
"\x02ip\x18\x01 \x01(\tR\x02ip\x12\x1c\n" +
"\tcommunity\x18\x02 \x01(\tR\tcommunity\x12\x18\n" +
"\aversion\x18\x03 \x01(\tR\aversion\x12\x12\n" +
"\x04port\x18\x04 \x01(\rR\x04port\x12*\n" +
"\x11v3_security_level\x18\x05 \x01(\tR\x0fv3SecurityLevel\x12\x1f\n" +
"\vv3_username\x18\x06 \x01(\tR\n" +
"v3Username\x12(\n" +
"\x10v3_auth_protocol\x18\a \x01(\tR\x0ev3AuthProtocol\x12(\n" +
"\x10v3_auth_password\x18\b \x01(\tR\x0ev3AuthPassword\x12(\n" +
"\x10v3_priv_protocol\x18\t \x01(\tR\x0ev3PrivProtocol\x12(\n" +
"\x10v3_priv_password\x18\n" +
" \x01(\tR\x0ev3PrivPassword\x12\x1c\n" +
"\ttransport\x18\v \x01(\tR\ttransport\"Y\n" +
"\tSnmpQuery\x128\n" +
"\n" +
"query_type\x18\x01 \x01(\x0e2\x19.towerops.agent.QueryTypeR\tqueryType\x12\x12\n" +
"\x04oids\x18\x02 \x03(\tR\x04oids\"\x9a\x02\n" +
"\n" +
"SnmpResult\x12\x1b\n" +
"\tdevice_id\x18\x01 \x01(\tR\bdeviceId\x122\n" +
"\bjob_type\x18\x02 \x01(\x0e2\x17.towerops.agent.JobTypeR\ajobType\x12H\n" +
"\n" +
"oid_values\x18\x03 \x03(\v2).towerops.agent.SnmpResult.OidValuesEntryR\toidValues\x12\x1c\n" +
"\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\x12\x15\n" +
"\x06job_id\x18\x05 \x01(\tR\x05jobId\x1a<\n" +
"\x0eOidValuesEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xa0\x01\n" +
"\x0eAgentHeartbeat\x12\x18\n" +
"\aversion\x18\x01 \x01(\tR\aversion\x12\x1a\n" +
"\bhostname\x18\x02 \x01(\tR\bhostname\x12%\n" +
"\x0euptime_seconds\x18\x03 \x01(\x04R\ruptimeSeconds\x12\x1d\n" +
"\n" +
"ip_address\x18\x04 \x01(\tR\tipAddress\x12\x12\n" +
"\x04arch\x18\x05 \x01(\tR\x04arch\"x\n" +
"\n" +
"AgentError\x12\x1b\n" +
"\tdevice_id\x18\x01 \x01(\tR\bdeviceId\x12\x15\n" +
"\x06job_id\x18\x02 \x01(\tR\x05jobId\x12\x18\n" +
"\amessage\x18\x03 \x01(\tR\amessage\x12\x1c\n" +
"\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\"\xbb\x01\n" +
"\x14CredentialTestResult\x12\x17\n" +
"\atest_id\x18\x01 \x01(\tR\x06testId\x12\x18\n" +
"\asuccess\x18\x02 \x01(\bR\asuccess\x12#\n" +
"\rerror_message\x18\x03 \x01(\tR\ferrorMessage\x12-\n" +
"\x12system_description\x18\x04 \x01(\tR\x11systemDescription\x12\x1c\n" +
"\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\"\xa0\x01\n" +
"\x0eMikrotikDevice\x12\x0e\n" +
"\x02ip\x18\x01 \x01(\tR\x02ip\x12\x12\n" +
"\x04port\x18\x02 \x01(\rR\x04port\x12\x1a\n" +
"\busername\x18\x03 \x01(\tR\busername\x12\x1a\n" +
"\bpassword\x18\x04 \x01(\tR\bpassword\x12\x17\n" +
"\ause_ssl\x18\x05 \x01(\bR\x06useSsl\x12\x19\n" +
"\bssh_port\x18\x06 \x01(\rR\asshPort\"\xa3\x01\n" +
"\x0fMikrotikCommand\x12\x18\n" +
"\acommand\x18\x01 \x01(\tR\acommand\x12=\n" +
"\x04args\x18\x02 \x03(\v2).towerops.agent.MikrotikCommand.ArgsEntryR\x04args\x1a7\n" +
"\tArgsEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xb8\x01\n" +
"\x0eMikrotikResult\x12\x1b\n" +
"\tdevice_id\x18\x01 \x01(\tR\bdeviceId\x12\x15\n" +
"\x06job_id\x18\x02 \x01(\tR\x05jobId\x12>\n" +
"\tsentences\x18\x03 \x03(\v2 .towerops.agent.MikrotikSentenceR\tsentences\x12\x14\n" +
"\x05error\x18\x04 \x01(\tR\x05error\x12\x1c\n" +
"\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\"\xa3\x01\n" +
"\x10MikrotikSentence\x12P\n" +
"\n" +
"attributes\x18\x01 \x03(\v20.towerops.agent.MikrotikSentence.AttributesEntryR\n" +
"attributes\x1a=\n" +
"\x0fAttributesEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xce\x01\n" +
"\x12LldpTopologyResult\x12\x1b\n" +
"\tdevice_id\x18\x01 \x01(\tR\bdeviceId\x12\x15\n" +
"\x06job_id\x18\x02 \x01(\tR\x05jobId\x12*\n" +
"\x11local_system_name\x18\x03 \x01(\tR\x0flocalSystemName\x12:\n" +
"\tneighbors\x18\x04 \x03(\v2\x1c.towerops.agent.LldpNeighborR\tneighbors\x12\x1c\n" +
"\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\"\xcc\x01\n" +
"\fLldpNeighbor\x12#\n" +
"\rneighbor_name\x18\x01 \x01(\tR\fneighborName\x12\x1d\n" +
"\n" +
"local_port\x18\x02 \x01(\tR\tlocalPort\x12\x1f\n" +
"\vremote_port\x18\x03 \x01(\tR\n" +
"remotePort\x12$\n" +
"\x0eremote_port_id\x18\x04 \x01(\tR\fremotePortId\x121\n" +
"\x14management_addresses\x18\x05 \x03(\tR\x13managementAddresses*b\n" +
"\aJobType\x12\f\n" +
"\bDISCOVER\x10\x00\x12\b\n" +
"\x04POLL\x10\x01\x12\f\n" +
"\bMIKROTIK\x10\x02\x12\x14\n" +
"\x10TEST_CREDENTIALS\x10\x03\x12\b\n" +
"\x04PING\x10\x04\x12\x11\n" +
"\rLLDP_TOPOLOGY\x10\x05*\x1e\n" +
"\tQueryType\x12\a\n" +
"\x03GET\x10\x00\x12\b\n" +
"\x04WALK\x10\x01B/Z-codeberg.org/towerops-agent/towerops-agent/pbb\x06proto3"
var (
file_proto_agent_proto_rawDescOnce sync.Once
file_proto_agent_proto_rawDescData []byte
)
func file_proto_agent_proto_rawDescGZIP() []byte {
file_proto_agent_proto_rawDescOnce.Do(func() {
file_proto_agent_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_proto_agent_proto_rawDesc), len(file_proto_agent_proto_rawDesc)))
})
return file_proto_agent_proto_rawDescData
}
var file_proto_agent_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_proto_agent_proto_msgTypes = make([]protoimpl.MessageInfo, 39)
var file_proto_agent_proto_goTypes = []any{
(JobType)(0), // 0: towerops.agent.JobType
(QueryType)(0), // 1: towerops.agent.QueryType
(*AgentConfig)(nil), // 2: towerops.agent.AgentConfig
(*Device)(nil), // 3: towerops.agent.Device
(*SnmpConfig)(nil), // 4: towerops.agent.SnmpConfig
(*Sensor)(nil), // 5: towerops.agent.Sensor
(*Interface)(nil), // 6: towerops.agent.Interface
(*MetricBatch)(nil), // 7: towerops.agent.MetricBatch
(*Metric)(nil), // 8: towerops.agent.Metric
(*SensorReading)(nil), // 9: towerops.agent.SensorReading
(*InterfaceStat)(nil), // 10: towerops.agent.InterfaceStat
(*NeighborDiscovery)(nil), // 11: towerops.agent.NeighborDiscovery
(*MonitoringCheck)(nil), // 12: towerops.agent.MonitoringCheck
(*Check)(nil), // 13: towerops.agent.Check
(*HttpCheckConfig)(nil), // 14: towerops.agent.HttpCheckConfig
(*TcpCheckConfig)(nil), // 15: towerops.agent.TcpCheckConfig
(*DnsCheckConfig)(nil), // 16: towerops.agent.DnsCheckConfig
(*SslCheckConfig)(nil), // 17: towerops.agent.SslCheckConfig
(*CheckResult)(nil), // 18: towerops.agent.CheckResult
(*CheckList)(nil), // 19: towerops.agent.CheckList
(*HeartbeatMetadata)(nil), // 20: towerops.agent.HeartbeatMetadata
(*HeartbeatResponse)(nil), // 21: towerops.agent.HeartbeatResponse
(*AgentJobList)(nil), // 22: towerops.agent.AgentJobList
(*AgentJob)(nil), // 23: towerops.agent.AgentJob
(*SnmpDevice)(nil), // 24: towerops.agent.SnmpDevice
(*SnmpQuery)(nil), // 25: towerops.agent.SnmpQuery
(*SnmpResult)(nil), // 26: towerops.agent.SnmpResult
(*AgentHeartbeat)(nil), // 27: towerops.agent.AgentHeartbeat
(*AgentError)(nil), // 28: towerops.agent.AgentError
(*CredentialTestResult)(nil), // 29: towerops.agent.CredentialTestResult
(*MikrotikDevice)(nil), // 30: towerops.agent.MikrotikDevice
(*MikrotikCommand)(nil), // 31: towerops.agent.MikrotikCommand
(*MikrotikResult)(nil), // 32: towerops.agent.MikrotikResult
(*MikrotikSentence)(nil), // 33: towerops.agent.MikrotikSentence
(*LldpTopologyResult)(nil), // 34: towerops.agent.LldpTopologyResult
(*LldpNeighbor)(nil), // 35: towerops.agent.LldpNeighbor
nil, // 36: towerops.agent.Sensor.MetadataEntry
nil, // 37: towerops.agent.HttpCheckConfig.HeadersEntry
nil, // 38: towerops.agent.SnmpResult.OidValuesEntry
nil, // 39: towerops.agent.MikrotikCommand.ArgsEntry
nil, // 40: towerops.agent.MikrotikSentence.AttributesEntry
}
var file_proto_agent_proto_depIdxs = []int32{
3, // 0: towerops.agent.AgentConfig.devices:type_name -> towerops.agent.Device
13, // 1: towerops.agent.AgentConfig.checks:type_name -> towerops.agent.Check
4, // 2: towerops.agent.Device.snmp:type_name -> towerops.agent.SnmpConfig
5, // 3: towerops.agent.Device.sensors:type_name -> towerops.agent.Sensor
6, // 4: towerops.agent.Device.interfaces:type_name -> towerops.agent.Interface
36, // 5: towerops.agent.Sensor.metadata:type_name -> towerops.agent.Sensor.MetadataEntry
8, // 6: towerops.agent.MetricBatch.metrics:type_name -> towerops.agent.Metric
9, // 7: towerops.agent.Metric.sensor_reading:type_name -> towerops.agent.SensorReading
10, // 8: towerops.agent.Metric.interface_stat:type_name -> towerops.agent.InterfaceStat
11, // 9: towerops.agent.Metric.neighbor_discovery:type_name -> towerops.agent.NeighborDiscovery
12, // 10: towerops.agent.Metric.monitoring_check:type_name -> towerops.agent.MonitoringCheck
18, // 11: towerops.agent.Metric.check_result:type_name -> towerops.agent.CheckResult
14, // 12: towerops.agent.Check.http:type_name -> towerops.agent.HttpCheckConfig
15, // 13: towerops.agent.Check.tcp:type_name -> towerops.agent.TcpCheckConfig
16, // 14: towerops.agent.Check.dns:type_name -> towerops.agent.DnsCheckConfig
17, // 15: towerops.agent.Check.ssl:type_name -> towerops.agent.SslCheckConfig
37, // 16: towerops.agent.HttpCheckConfig.headers:type_name -> towerops.agent.HttpCheckConfig.HeadersEntry
13, // 17: towerops.agent.CheckList.checks:type_name -> towerops.agent.Check
23, // 18: towerops.agent.AgentJobList.jobs:type_name -> towerops.agent.AgentJob
0, // 19: towerops.agent.AgentJob.job_type:type_name -> towerops.agent.JobType
24, // 20: towerops.agent.AgentJob.snmp_device:type_name -> towerops.agent.SnmpDevice
25, // 21: towerops.agent.AgentJob.queries:type_name -> towerops.agent.SnmpQuery
30, // 22: towerops.agent.AgentJob.mikrotik_device:type_name -> towerops.agent.MikrotikDevice
31, // 23: towerops.agent.AgentJob.mikrotik_commands:type_name -> towerops.agent.MikrotikCommand
1, // 24: towerops.agent.SnmpQuery.query_type:type_name -> towerops.agent.QueryType
0, // 25: towerops.agent.SnmpResult.job_type:type_name -> towerops.agent.JobType
38, // 26: towerops.agent.SnmpResult.oid_values:type_name -> towerops.agent.SnmpResult.OidValuesEntry
39, // 27: towerops.agent.MikrotikCommand.args:type_name -> towerops.agent.MikrotikCommand.ArgsEntry
33, // 28: towerops.agent.MikrotikResult.sentences:type_name -> towerops.agent.MikrotikSentence
40, // 29: towerops.agent.MikrotikSentence.attributes:type_name -> towerops.agent.MikrotikSentence.AttributesEntry
35, // 30: towerops.agent.LldpTopologyResult.neighbors:type_name -> towerops.agent.LldpNeighbor
31, // [31:31] is the sub-list for method output_type
31, // [31:31] is the sub-list for method input_type
31, // [31:31] is the sub-list for extension type_name
31, // [31:31] is the sub-list for extension extendee
0, // [0:31] is the sub-list for field type_name
}
func init() { file_proto_agent_proto_init() }
func file_proto_agent_proto_init() {
if File_proto_agent_proto != nil {
return
}
file_proto_agent_proto_msgTypes[6].OneofWrappers = []any{
(*Metric_SensorReading)(nil),
(*Metric_InterfaceStat)(nil),
(*Metric_NeighborDiscovery)(nil),
(*Metric_MonitoringCheck)(nil),
(*Metric_CheckResult)(nil),
}
file_proto_agent_proto_msgTypes[11].OneofWrappers = []any{
(*Check_Http)(nil),
(*Check_Tcp)(nil),
(*Check_Dns)(nil),
(*Check_Ssl)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_agent_proto_rawDesc), len(file_proto_agent_proto_rawDesc)),
NumEnums: 2,
NumMessages: 39,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_proto_agent_proto_goTypes,
DependencyIndexes: file_proto_agent_proto_depIdxs,
EnumInfos: file_proto_agent_proto_enumTypes,
MessageInfos: file_proto_agent_proto_msgTypes,
}.Build()
File_proto_agent_proto = out.File
file_proto_agent_proto_goTypes = nil
file_proto_agent_proto_depIdxs = nil
}