LoongCollector

1832
下载
LoongCollector 是阿里云可观测性团队所开源的项目,是一款集卓越性能、超强稳定性和灵活可编程性于一身的数据采集器,专为构建下一代可观测 Pipeline 设计。它继承了 iLogtail 强大的日志采集与处理能力,从原来单一日志场景,逐步扩展为可观测数据采集、本地计算、服务发现的统一体。愿景是:打造业界领先的“统一可观测 Agent”与“端到端可观测”

收集 SNMP 协议机器信息



简介

service_snmp插件支持 SNMP V1,V2,V3。可以转化用户输入并对指定 ip 的机器执行 SNMP-GET 指令获取机器信息。

运行本插件需要本地已运行 snmp 程序,开放snmpget需要的端口,且可正常执行snmptranslate命令和snmptable命令。

版本

Stable

版本说明

  • 推荐版本:iLogtail v1.0.27 及以上

配置参数

参数类型是否必选参数说明
TypeString插件类型,固定为service_snmp
Targetsstring list目标机器组的 ip 地址组
PortstringSNMP 协议使用的端口,默认为"161"
CommunitystringSNMPV1,V2 使用的验证方式:community。默认为"public"
UserNamestringSNMPV3 使用的验证方式:用户名。默认为空
AuthenticationProtocolstringSNMPV3 使用的验证方式:验证协议。默认为NoAuth
AuthenticationPassphrasestringSNMPV3 使用的验证方式:验证密码。当验证协议(AuthenticationProtocol)设置为 MD5 或 SHA 时,本项是必需的。默认为空
PrivacyProtocolstringSNMPV3 使用的验证方式:隐私协议。默认为NoPriv
PrivacyPassphrasestringSNMPV3 使用的验证方式:隐私协议密码。当隐私协议设置为 DES 或 AES 时,本项是必需的。默认为与用户密码一致
Timeoutint一次查询操作的超时时间,单位为秒。默认为5
VersionintSNM 协议版本,可以填写123,默认为2
TransportstringSNMP 的通讯方法,可以填写"udp""tcp",默认为"udp"
MaxRepetitionsint查询超时后的重试次数,默认为0
Oidsstring list对目标机器查询的 Oid 列表,默认为空
Fieldsstring list对目标机器查询的 Fields 列表。本插件会先对 Fields 进行翻译,查找本地 MIB 将之翻译为 Oids 并一起查询,默认为空
Tablesstring list对目标机器查询的 Tables 列表。本插件会首先查询 Table 内所有的 Field,查找本地 MIB 将之翻译为 Oids 并一起查询,默认为空

配置文件及结果示例

插件设置示例一

config.json中:

"inputs":[
{
"type":"service_snmp",
"detail":{
"Targets": ["127.0.0.1"],
"Port": "161",
"Community": "public",
"Timeout": 5,
"Version":2,
"Transport":"udp",
"MaxRepetitions":0,
"Oids":[
"1.3.6.1.2.1.1.3.0",
"1.3.6.1.2.1.1.4.0",
"1.3.6.1.2.1.1.7.0",
"1.3.6.1.2.1.1.1.0"
]
}
}
],

本示例采用了 SNMPV2 协议,团体名为"public"

采集结果:

{"_target_":"127.0.0.1","_field_":"DISMAN-EXPRESSION-MIB::sysUpTimeInstance","_oid_":".1.3.6.1.2.1.1.3.0","_conversion_":"","_type_":"TimeTicks","_content_":"10522102","_targetindex_":"0"}
{"_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysContact.0","_oid_":".1.3.6.1.2.1.1.4.0","_conversion_":"","_type_":"OctetString","_content_":"Me <me@example.org>","_targetindex_":"0"}
{"_conversion_":"","_type_":"Integer","_content_":"72","_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysServices.0","_oid_":".1.3.6.1.2.1.1.7.0"}
{"_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysDescr.0","_oid_":".1.3.6.1.2.1.1.1.0","_conversion_":"","_type_":"OctetString","_content_":"Linux 4be69bf59c36 5.10.25-linuxkit #1 SMP Tue Mar 23 09:27:39 UTC 2021 x86_64"}

采集字段含义:

字段说明
_target_目标收集的机器 ip
_targetindex_目标收集的机器在本插件所有目标机器组中的排序。本例中仅有一个目标机器127.0.0.1因此本项恒为 0
_field_目标收集的 Oid 经过本地 MIB 翻译后的内容
_oid_目标收集的 Oid
_conversion_收集结果进行了哪种类型转换,目前支持"ipaddr""hwaddr"两种,分别会对 ip 地址和设备地址进行转换。若为空则未发生类型转换
_type_收集到的结果的类型
_content_收集到的结果的内容

插件设置示例二

config.json中:

"inputs":[
{
"type":"service_snmp",
"detail":{
"Targets":["127.0.0.1"],
"Port": "161",
"Community": "public",
"Timeout": 5,
"Version":3,
"UserName":"snmpreadonly",
"AuthenticationProtocol":"SHA",
"AuthenticationPassphrase":"SecUREDpass",
"PrivacyProtocol":"AES",
"PrivacyPassphrase":"StRongPASS",
"Oids":[
"1.3.6.1.2.1.1.3.0",
"1.3.6.1.2.1.1.1.0"
],
"Fields":[
"SNMPv2-MIB::sysContact.0",
"SNMPv2-MIB::sysServices.0"
],
"Transport":"udp"
}
}
],

本示例采用了 SNMPV3 协议,查询的目标机器组仅有一台机器"127.0.0.1"即本机。用户名为"snmpreadonly", 验证协议为"SHA", 用户密码为"SecUREDpass", 隐私协议为"AES", 隐私密码为"StRongPASS"

若希望在本地复现该配置,可以运行:

Terminal window
net-snmp-create-v3-user -ro -A SecUREDpass -a SHA -X StRongPASS -x AES snmpreadonly

采集结果:

{"_target_":"127.0.0.1","_field_":"DISMAN-EXPRESSION-MIB::sysUpTimeInstance","_oid_":".1.3.6.1.2.1.1.3.0","_conversion_":"","_type_":"TimeTicks","_content_":"10423593","_targetindex_":"0"}
{"_type_":"OctetString","_content_":"Linux 4be69bf59c36 5.10.25-linuxkit #1 SMP Tue Mar 23 09:27:39 UTC 2021 x86_64","_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysDescr.0","_oid_":".1.3.6.1.2.1.1.1.0","_conversion_":""}
{"_content_":"Me <me@example.org>","_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysContact.0","_oid_":".1.3.6.1.2.1.1.4.0","_conversion_":"","_type_":"OctetString"}
{"_conversion_":"","_type_":"Integer","_content_":"72","_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysServices.0","_oid_":".1.3.6.1.2.1.1.7.0"}

observability.cn Authors 2024 | Documentation Distributed under CC-BY-4.0
Copyright © 2017-2024, Alibaba. All rights reserved. Alibaba has registered trademarks and uses trademarks.
浙ICP备2021005855号-32