Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( DefaultAuth = Auth{ Community: "public", SecurityLevel: "noAuthNoPriv", AuthProtocol: "MD5", PrivProtocol: "DES", Version: 2, } DefaultWalkParams = WalkParams{ MaxRepetitions: 25, Retries: &defaultRetries, Timeout: time.Second * 5, UseUnconnectedUDPSocket: false, AllowNonIncreasingOIDs: false, } DefaultModule = Module{ WalkParams: DefaultWalkParams, } DefaultRegexpExtract = RegexpExtract{ Value: "$1", } )
View Source
var (
DoNotHideSecrets = false
)
Hack for creating snmp.yml with the secret.
Functions ¶
This section is empty.
Types ¶
type Auth ¶
type Auth struct {
Community Secret `yaml:"community,omitempty"`
SecurityLevel string `yaml:"security_level,omitempty"`
Username string `yaml:"username,omitempty"`
Password Secret `yaml:"password,omitempty"`
AuthProtocol string `yaml:"auth_protocol,omitempty"`
PrivProtocol string `yaml:"priv_protocol,omitempty"`
PrivPassword Secret `yaml:"priv_password,omitempty"`
ContextName string `yaml:"context_name,omitempty"`
Version int `yaml:"version,omitempty"`
}
func (Auth) ConfigureSNMP ¶ added in v0.26.1
ConfigureSNMP sets the various version and auth settings.
func (*Auth) UnmarshalYAML ¶
type Config ¶
type Config struct {
Auths map[string]*Auth `yaml:"auths,omitempty"`
Modules map[string]*Module `yaml:"modules,omitempty"`
Version int `yaml:"version,omitempty"`
}
Config for the snmp_exporter.
type DynamicFilter ¶ added in v0.26.1
type Filters ¶ added in v0.26.1
type Filters struct {
Static []StaticFilter `yaml:"static,omitempty"`
Dynamic []DynamicFilter `yaml:"dynamic,omitempty"`
}
type Metric ¶
type Metric struct {
Name string `yaml:"name"`
Oid string `yaml:"oid"`
Type string `yaml:"type"`
Help string `yaml:"help"`
Indexes []*Index `yaml:"indexes,omitempty"`
Lookups []*Lookup `yaml:"lookups,omitempty"`
RegexpExtracts map[string][]RegexpExtract `yaml:"regex_extracts,omitempty"`
EnumValues map[int]string `yaml:"enum_values,omitempty"`
Offset float64 `yaml:"offset,omitempty"`
Scale float64 `yaml:"scale,omitempty"`
}
type Module ¶
type Module struct {
// A list of OIDs.
Walk []string `yaml:"walk,omitempty"`
Get []string `yaml:"get,omitempty"`
Metrics []*Metric `yaml:"metrics"`
WalkParams WalkParams `yaml:",inline"`
Filters []DynamicFilter `yaml:"filters,omitempty"`
}
func (*Module) UnmarshalYAML ¶
type Regexp ¶ added in v0.5.0
Regexp encapsulates a regexp.Regexp and makes it YAML marshalable.
func (Regexp) MarshalYAML ¶ added in v0.5.0
MarshalYAML implements the yaml.Marshaler interface.
func (*Regexp) UnmarshalYAML ¶ added in v0.5.0
UnmarshalYAML implements the yaml.Unmarshaler interface.
type RegexpExtract ¶ added in v0.5.0
func (*RegexpExtract) UnmarshalYAML ¶ added in v0.5.0
func (c *RegexpExtract) UnmarshalYAML(unmarshal func(interface{}) error) error
type Secret ¶ added in v0.5.0
type Secret string
Secret is a string that must not be revealed on marshaling.
func (Secret) MarshalYAML ¶ added in v0.5.0
MarshalYAML implements the yaml.Marshaler interface.
type StaticFilter ¶ added in v0.26.1
type WalkParams ¶ added in v0.5.0
type WalkParams struct {
MaxRepetitions uint32 `yaml:"max_repetitions,omitempty"`
Retries *int `yaml:"retries,omitempty"`
Timeout time.Duration `yaml:"timeout,omitempty"`
UseUnconnectedUDPSocket bool `yaml:"use_unconnected_udp_socket,omitempty"`
AllowNonIncreasingOIDs bool `yaml:"allow_nonincreasing_oids,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.