Documentation
¶
Index ¶
- func NewSNMPDriver() driver.Driver
- type Address
- type SNMPDecoder
- func (d *SNMPDecoder) DecodePDU(pdu gosnmp.SnmpPDU, dataType string) (any, string)
- func (d *SNMPDecoder) EncodeValue(value any, dataType string) (interface{}, gosnmp.Asn1BER, error)
- func (d *SNMPDecoder) ParseAddress(addr string, cfg deviceConfig) (*Address, error)
- func (d *SNMPDecoder) ToModelValue(point model.Point, pdu gosnmp.SnmpPDU) model.Value
- type SNMPDriver
- func (d *SNMPDriver) Connect(ctx context.Context) error
- func (d *SNMPDriver) Disconnect() error
- func (d *SNMPDriver) GetConnectionMetrics() (connectionSeconds int64, reconnectCount int64, localAddr string, ...)
- func (d *SNMPDriver) Health() driver.HealthStatus
- func (d *SNMPDriver) Init(cfg model.DriverConfig) error
- func (d *SNMPDriver) ReadPoints(ctx context.Context, points []model.Point) (map[string]model.Value, error)
- func (d *SNMPDriver) ScanObjects(ctx context.Context, config map[string]any) (any, error)
- func (d *SNMPDriver) SetDeviceConfig(config map[string]any) error
- func (d *SNMPDriver) SetSlaveID(_ uint8) error
- func (d *SNMPDriver) WritePoint(ctx context.Context, point model.Point, value any) error
- type SNMPScheduler
- type SNMPTransport
- func (t *SNMPTransport) Connect(ctx context.Context) error
- func (t *SNMPTransport) Disconnect() error
- func (t *SNMPTransport) Get(oids []string, community string) ([]gosnmp.SnmpPDU, error)
- func (t *SNMPTransport) GetBulk(baseOID string, community string, maxRepetitions int) ([]gosnmp.SnmpPDU, error)
- func (t *SNMPTransport) GetConnectionMetrics() (connectionSeconds int64, reconnectCount int64, localAddr string, ...)
- func (t *SNMPTransport) GetNext(oid string, community string) (*gosnmp.SnmpPDU, error)
- func (t *SNMPTransport) IsConnected() bool
- func (t *SNMPTransport) Set(oid string, value interface{}, asnType gosnmp.Asn1BER, community string) error
- func (t *SNMPTransport) SetConfig(cfg deviceConfig)
- func (t *SNMPTransport) Walk(rootOID string, community string, walkFn func(pdu gosnmp.SnmpPDU) error) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewSNMPDriver ¶
Types ¶
type SNMPDecoder ¶
type SNMPDecoder struct{}
func NewSNMPDecoder ¶
func NewSNMPDecoder() *SNMPDecoder
func (*SNMPDecoder) EncodeValue ¶
func (*SNMPDecoder) ParseAddress ¶
func (d *SNMPDecoder) ParseAddress(addr string, cfg deviceConfig) (*Address, error)
func (*SNMPDecoder) ToModelValue ¶
type SNMPDriver ¶
type SNMPDriver struct {
// contains filtered or unexported fields
}
func (*SNMPDriver) Disconnect ¶
func (d *SNMPDriver) Disconnect() error
func (*SNMPDriver) GetConnectionMetrics ¶
func (*SNMPDriver) Health ¶
func (d *SNMPDriver) Health() driver.HealthStatus
func (*SNMPDriver) Init ¶
func (d *SNMPDriver) Init(cfg model.DriverConfig) error
func (*SNMPDriver) ReadPoints ¶
func (*SNMPDriver) ScanObjects ¶
ScanObjects walks a MIB subtree for device discovery (ObjectScanner).
func (*SNMPDriver) SetDeviceConfig ¶
func (d *SNMPDriver) SetDeviceConfig(config map[string]any) error
func (*SNMPDriver) SetSlaveID ¶
func (d *SNMPDriver) SetSlaveID(_ uint8) error
func (*SNMPDriver) WritePoint ¶
type SNMPScheduler ¶
type SNMPScheduler struct {
// contains filtered or unexported fields
}
func NewSNMPScheduler ¶
func NewSNMPScheduler(transport *SNMPTransport, decoder *SNMPDecoder, cfg map[string]any) *SNMPScheduler
func (*SNMPScheduler) GetStats ¶
func (s *SNMPScheduler) GetStats() (totalRequests, successCount, failureCount int64)
func (*SNMPScheduler) ReadPoints ¶
func (*SNMPScheduler) WritePoint ¶
type SNMPTransport ¶
type SNMPTransport struct {
// contains filtered or unexported fields
}
func NewSNMPTransport ¶
func NewSNMPTransport(cfg map[string]any) *SNMPTransport
func (*SNMPTransport) Disconnect ¶
func (t *SNMPTransport) Disconnect() error
func (*SNMPTransport) GetConnectionMetrics ¶
func (*SNMPTransport) IsConnected ¶
func (t *SNMPTransport) IsConnected() bool
func (*SNMPTransport) SetConfig ¶
func (t *SNMPTransport) SetConfig(cfg deviceConfig)
Click to show internal directories.
Click to hide internal directories.