Monitor Type: telegraf/snmp
(Source)
Accepts Endpoints: Yes
Multiple Instances Allowed: Yes
This monitor reports metrics from snmp agents. This monitor is based on the Telegraf SNMP plugin. More information about the Telegraf plugin can be found here.
NOTE: This snmp monitor does not currently support MIB look ups because of a dependency on net-snmp
and specifically the commands snmptranslate
and snmptable
.
Sample YAML configuration:
monitors:
- type: telegraf/snmp
agents:
- "127.0.0.1:161"
version: 2
community: "public"
fields:
- name: "uptime"
oid: ".1.3.6.1.2.1.1.3.0"
Using a discovery rule to discover and configure for a specific snmp agent
monitors:
- type: telegraf/snmp
discoveryRule: container_name =~ "snmp" && port == 161
version: 2
community: "public"
fields:
- name: "uptime"
oid: ".1.3.6.1.2.1.1.3.0"
To activate this monitor in the Smart Agent, add the following to your agent config:
monitors: # All monitor config goes under this key
- type: telegraf/snmp
... # Additional config
For a list of monitor options that are common to all monitors, see Common Configuration.
Config option | Required | Type | Description |
---|---|---|---|
host |
no | string |
Host and port will be concatenated and appended to the list of SNMP agents to connect to. |
port |
no | integer |
Port and Host will be concatenated and appended to the list of SNMP agents to connect to. (default: 0 ) |
agents |
no | list of strings |
SNMP agent address and ports to query for information. An example address is 0.0.0.0:5555 If an address is supplied with out a port, the default port 161 will be used. |
retries |
no | integer |
The number of times to retry. (default: 0 ) |
community |
no | string |
The SNMP community to use. (default: public ) |
maxRepetitions |
no | uint8 |
Maximum number of iterations for reqpeating variables (default: 50 ) |
contextName |
no | string |
SNMP v3 context name to use with requests |
secLevel |
no | string |
Security level to use for SNMP v3 messages: noAuthNoPriv authNoPriv , authPriv . (default: noAuthNoPriv ) |
secName |
no | string |
Name to used to authenticate with SNMP v3 requests. |
authProtocol |
no | string |
Protocol to used to authenticate SNMP v3 requests: "MD5" , "SHA" , and "" (default). |
authPassword |
no | string |
Password used to authenticate SNMP v3 requests. |
privProtocol |
no | string |
Protocol used for encrypted SNMP v3 messages: DES , AES , "" (default). |
privPassword |
no | string |
Password used to encrypt SNMP v3 messages. |
engineID |
no | string |
The SNMP v3 engine ID. |
engineBoots |
no | uint32 |
The SNMP v3 engine boots. (default: 0 ) |
engineTime |
no | uint32 |
The SNMP v3 engine time. (default: 0 ) |
name |
no | string |
The top-level measurement name |
fields |
no | list of objects (see below) |
The top-level SNMP fields |
tables |
no | list of objects (see below) |
SNMP Tables |
The nested fields
config object has the following fields:
Config option | Required | Type | Description |
---|---|---|---|
name |
no | string |
Name of the field. The OID will be used if no value is supplied. |
oid |
no | string |
The OID to fetch. |
oidIndexSuffix |
no | string |
The sub-identifier to strip off when matching indexes to other fields. |
oidIndexLength |
no | integer |
The index length after the table OID. The index will be truncated after this length in order to remove length index suffixes or non-fixed values. (default: 0 ) |
isTag |
no | bool |
Whether to output the field as a tag. (default: false ) |
conversion |
no | string |
Controls the type conversion applied to the value: "float(X)" , "float" , "int" , "hwaddr" , "ipaddr" or "" (default). |
The nested tables
config object has the following fields:
Config option | Required | Type | Description |
---|---|---|---|
name |
no | string |
Metric name. If not supplied the OID will be used. |
inheritTags |
no | list of strings |
Top level tags to inherit. |
indexAsTag |
no | bool |
Add a tag for the table index for each row. (default: false ) |
field |
no | list of objects (see below) |
Specifies the ags and values to look up. |
oid |
no | string |
The OID to fetch. |
The nested field
config object has the following fields:
Config option | Required | Type | Description |
---|---|---|---|
name |
no | string |
Name of the field. The OID will be used if no value is supplied. |
oid |
no | string |
The OID to fetch. |
oidIndexSuffix |
no | string |
The sub-identifier to strip off when matching indexes to other fields. |
oidIndexLength |
no | integer |
The index length after the table OID. The index will be truncated after this length in order to remove length index suffixes or non-fixed values. (default: 0 ) |
isTag |
no | bool |
Whether to output the field as a tag. (default: false ) |
conversion |
no | string |
Controls the type conversion applied to the value: "float(X)" , "float" , "int" , "hwaddr" , "ipaddr" or "" (default). |
The agent does not do any built-in filtering of metrics coming out of this monitor.