本文へスキップ

使用例

Telegrafの詳細については、influxdataのTelegraf documentationを参照してください。

ノート

Telegrafプラグインおよびエージェントは、ユーザーが独自のサービスに直接インストールして設定する必要があります。

SNMP

SNMP input pluginを使用して、SNMP性能データをリアルタイムで収集および、チャート化します。収集されたデータは、telegraf_snmp および、telegraf_interface`のカテゴリで検索できます。

Linux Shell
cat >/etc/telegraf/telegraf.d/snmp_device.conf <<EOL
[[inputs.snmp]]
## Agent addresses to retrieve values from.
## format: agents = ["<scheme://><hostname>:<port>"]
## scheme: optional, either udp, udp4, udp6, tcp, tcp4, tcp6.
## default is udp
## port: optional
## example: agents = ["udp://127.0.0.1:161"]
## agents = ["tcp://127.0.0.1:161"]
## agents = ["udp4://v4only-snmp-agent"]

agents = ["udp://1.1.1.1:161"]

## Timeout for each request.
# timeout = "5s"

## SNMP version; can be 1, 2, or 3.
version = 2

## SNMP community string.
community = "xxxx@xxxxx"

## Agent host tag
# agent_host_tag = "agent_host"

## Number of retries to attempt.
# retries = 3

## The GETBULK max-repetitions parameter.
# max_repetitions = 10

## SNMPv3 authentication and encryption options.
##
## Security Name.
# sec_name = "myuser"
## Authentication protocol; one of "MD5", "SHA", "SHA224", "SHA256", "SHA384", "SHA512" or "".
# auth_protocol = "MD5"
## Authentication password.
# auth_password = "pass"
## Security Level; one of "noAuthNoPriv", "authNoPriv", or "authPriv".
# sec_level = "authNoPriv"
## Context Name.
# context_name = ""
## Privacy protocol used for encrypted messages; one of "DES", "AES", "AES192", "AES192C", "AES256", "AES256C", or "".
### Protocols "AES192", "AES192", "AES256", and "AES256C" require the underlying net-snmp tools
### to be compiled with --enable-blumenthal-aes (http://www.net-snmp.org/docs/INSTALL.html)
# priv_protocol = ""
## Privacy password used for encrypted messages.
# priv_password = ""

## Add fields and tables defining the variables you wish to collect. This
## example collects the system uptime and interface variables. Reference the
## full plugin documentation for configuration details.
[[inputs.snmp.field]]
oid = "RFC1213-MIB::sysUpTime.0"
name = "uptime"

[[inputs.snmp.field]]
oid = "RFC1213-MIB::sysName.0"
name = "source"
is_tag = true

[[inputs.snmp.table]]
oid = "IF-MIB::ifXTable"
name = "interface"
inherit_tags = ["source"]

[[inputs.snmp.table.field]]
oid = "IF-MIB::ifDescr"
name = "ifDescr"
is_tag = true

[[aggregators.derivative]]
period = "60s"
max_roll_over = 1

fieldpass = ["*Octets", "*Pkts"]
drop_original = false

[aggregators.derivative.tags]
aggr = "derivative"

[[processors.starlark]]
source = '''
def apply(metric):
for (k, v) in metric.fields.items():
if k.endswith('Octets_rate'):
metric.fields[k] *= 8

return metric

'''

EOL
service telegraf restart

SNMP Trap

SNMP Trap input pluginを使用して、SNMP Trapイベントをリアルタイムで収集し、メール、SMSメッセージ、メッセンジャーなどで送信できます。収集されたデータはtelegraf_snmp_trapカテゴリで検索することができます。

Linux Shell
cat >/etc/telegraf/telegraf.d/snmp_trap.conf <<EOL
[[inputs.snmp_trap]]
service_address = "udp://:162"
EOL
service telegraf restart