-
Notifications
You must be signed in to change notification settings - Fork 5
SNMP
Daria Kharlan edited this page Oct 13, 2022
·
23 revisions
| Property | Type | Description |
|---|---|---|
type |
String | Specify source type. Value - snmp
|
name |
String | Unique source name - also the config filename |
config |
Object | Source configuration |
All properties are required
| Property | Type | Required | Description |
|---|---|---|---|
hosts |
Array | Yes | List of SNMP device URLs (default PORT is 161). The number of hosts for a single source shouldn't be more than 10 |
read_community |
String | Yes | SNMP read community |
query_timeout |
Integer | No | Timeout value for SNMP query |
[
{
"type": "snmp",
"name": "snmp",
"config": {
"hosts": ["http://somehost:161"],
"read_community": "public",
"query_timeout": 30
}
}
]| Property | Required | Value type | Description |
|---|---|---|---|
source |
yes | String | Source config name |
pipeline_id |
yes | String | Unique pipeline identifier (use a human-readable name so you could easily use it further) |
interval |
yes | Integer | How often to query data, unit - seconds |
dimension_value_paths |
yes | Object | Key-value pairs of OIDs with dimension names that will be used as dimensions (dimension_name:oid) |
oid_table |
no | Object | Properties to process OIDs defined inside SNMP tables |
values |
yes | Object | Key-value pairs (target_type). A target type represents how samples of the same metric are aggregated in Anodot. Valid values are gauge (average aggregation), counter (sum aggregation), running_counter (will calculate the difference between the last value and current value) |
units |
no | Object | Key-value pairs (value:unit). The value must be from the values column, units can be any. |
measurement_names |
yes | Object | Key-value pairs (oid:name) |
dimensions |
no | Array | List of OIDs that will be used as dimensions |
properties |
no | Object | Dimensions with static values to pass to Anodot. Object with key-value pairs |
tags |
no | Object | Tags. Object with key-value pairs |
transform |
no | Object | See transformations page |
notifications |
No | Object | See notifications page |
| Property | Required | Type | Description |
|---|---|---|---|
<name> |
yes | Object | SNMP Table name. Could be any |
mib |
yes | String | MIB Name. Without it is not possible to search dimensions or values by their names |
use_indexes |
no | Array | List of table index numbers to request. If empty - whole table requested |
values |
no | Object | Key-value pairs of OID names and (target_type). A target type represents how samples of the same metric are aggregated in Anodot. Valid values are gauge (average aggregation), counter (sum aggregation), running_counter (will calculate the difference between the last value and current value) |
dimensions |
no | Array | List of OIDs that will be used as dimensions. |
[
{
"source": "snmp",
"pipeline_id": "snmp",
"oid_table": {
"ifTable": {
"mib": "IF-MIB",
"use_indexes": [2],
"values": {
"ifMtu": "counter",
"ifSpeed": "gauge"
},
"dimensions": ["ifDescr", "ifType"]
}
},
"values": {
"1.3.6.1.2.1.5.14.0": "counter",
"1.3.6.1.2.1.5.1.0": "counter"
},
"units": {
"1.3.6.1.2.1.5.14.0": "unit_1",
"1.3.6.1.2.1.5.1.0": "unit_1"
},
"measurement_names": {
"1.3.6.1.2.1.5.14.0": "icmp_out_msgs",
"1.3.6.1.2.1.5.1.0": "icmp_in_msgs"
},
"dimensions": ["system_description", "system_location"],
"dimension_value_paths": {
"system_description": "1.3.6.1.2.1.1.1.0",
"system_location": "1.3.6.1.2.1.1.6.0",
"hostname": "1.3.6.1.2.1.1.5.0",
},
"transform": {
"config": "dimensions/host_name,zeus.snmplabs.com,'dimensions/host_name' == 'value=zeus.snmplabs.com (you can change this!)'"
},
"interval": "5m"
}
]Raw pipelines are designed specifically for test purposes only. Raw pipelines could be configured before standard pipeline usage. With this kind of pipelines, You can see what data is returned by the request to the data source, meaning what data contains in specified OIDs. It does not make any changes or transformations with data or send data to Anodot
To create a raw pipeline use the command agent pipeline create-raw -f path/to/config.json
| Property | Required | Value type in config file | Description |
|---|---|---|---|
source |
yes | String | Source config name |
pipeline_id |
yes | String | Unique pipeline identifier |
interval |
yes | Integer | Query data every N seconds |
oids |
yes | List | List of OIDS to retrieve from a device |
send_data_format |
no | String | Choose a data format in which the data will be saved to the filesystem. Possible values are: JSON, DELIMITED. Default: DELIMITED
|
[
{
"source": "snmp_raw",
"pipeline_id": "snmp_raw",
"oids": [
"1.3.6.1.2.1.1.1.0",
"1.3.6.1.2.1.1.2.0",
"1.3.6.1.2.1.1.4.0"
],
"interval": "5m"
}
]
- Home
- CLI reference
- API
- Kubernetes setup using Helm
- Podman setup
- Creating pipelines
- Test sources
- Data formats (JSON, CSV, AVRO, LOG)
- How to parse logs with grok patterns
- How to store sensitive information
- Automated pipelines creation
- Filtering
- Transformation files
- Fields
- DVP Configuration
- Integrations
- Sending events to Anodot