本文介紹如何使用Logtail的input_snmp外掛程式採集SNMP協議機器資訊。
前提條件
已有可用的機器用於安裝Logtail,且該機器需具備如下條件。
已在機器上運行snmp程式。
已在機器上開放
snmpget
所需連接埠。該機器支援執行
snmptranslate
命令和snmptable
命令。
操作步驟
在接入資料地區,選擇自訂資料外掛程式。
選擇目標Project和Logstore,單擊下一步。
建立機器組。
如果您已有可用的機器組,請單擊使用現有機器組。
如果您還沒有可用的機器組,請執行以下操作(以ECS為例)。
在ECS機器頁簽中,通過手動選擇執行個體方式選擇目標ECS執行個體,單擊建立。
具體操作,請參見安裝Logtail(ECS執行個體)。
如果您的伺服器是與Log Service屬於不同帳號的ECS、其他雲廠商的伺服器和自建IDC時,您需要手動安裝Logtail。具體操作,請參見安裝Logtail(Linux系統)或安裝Logtail(Windows系統)。手動安裝Logtail後,您必須在該伺服器上手動設定使用者標識。具體操作,請參見配置使用者標識。
安裝完成後,單擊確認安裝完畢。
在建立機器組頁面,輸入名稱,單擊下一步。
Log Service支援建立IP地址機器組和使用者自訂標識機器組,詳細參數說明請參見建立IP地址機器組和建立使用者自訂標識機器組。
選中目標機器組,將該機器組從源機器組移動到應用機器組,單擊下一步。
建立機器組後立刻應用,可能因為串連未生效,導致心跳為FAIL,您可單擊自動重試。如果還未解決,請參見Logtail機器組問題排查思路(主機情境)。
在資料來源設定頁簽中,設定配置名稱和外掛程式配置,然後單擊下一步。
inputs
為資料來源配置,必選項。processors
為處理配置,用於解析資料。可選項,您可以配置一種或多種處理方式。如果當前的
inputs
配置無法滿足日誌解析需求,您可以在中外掛程式配置添加processors配置,即添加Logtail外掛程式處理資料。例如提取欄位、提取日誌時間、脫敏資料、過濾日誌等。更多資訊,請參見使用Logtail外掛程式處理資料。
"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" ] } } ],
參數
類型
是否必選
參數說明
參數
類型
是否必選
參數說明
Targets
string list
必選
目標機器組的IP地址。
Port
string
可選
SNMP協議使用的連接埠,預設值為
161
。Community
string
可選
團體名稱,預設值為
public
。SNMPv1和SNMPv2使用團體名進行認證。
UserName
string
可選
使用者名稱,預設值為空白。
SNMPv3支援使用使用者名稱進行認證。
AuthenticationProtocol
string
可選
驗證協議,預設值為
NoAuth
。SNMPv3支援使用驗證協議進行認證。
AuthenticationPassphrase
string
可選
驗證密碼,預設值為空白。
設定
AuthenticationProtocol
為MD5
或SHA
時,需要設定AuthenticationPassphrase
。PrivacyProtocol
string
可選
隱私協議,預設值為
NoPriv
。SNMPv3支援使用隱私協議進行認證。
PrivacyPassphrase
string
可選
隱私協議密碼,預設與驗證密碼一致。
當設定
PrivacyProtocol
為DES
或AES
時,必須設定PrivacyPassphrase
。Timeout
int
可選
一次查詢操作的逾時時間,單位為秒。預設值為
5
。Version
int
可選
SNMP協議版本,預設值為
2
。可選值為
1
、2
、3
。Transport
string
可選
SNMP通訊方法,預設值為
udp
。可選值為
udp
、tcp
。MaxRepetitions
int
可選
查詢逾時後的重試次數,預設值為
0
。Oids
string list
可選
在目標機器中查詢的物件識別碼,預設值為空白。
Fields
string list
可選
在目標機器中查詢的欄位,預設值為空白。
本外掛程式會先對欄位進行翻譯,即尋找本地管理資訊庫,將其翻譯為物件識別碼並一起查詢。
Tables
string list
可選
在目標機器中查詢的表,預設值為空白。
本外掛程式會先查詢表內所有的欄位,然後尋找本地管理資訊庫,將其翻譯為物件識別碼並一起查詢。
預覽資料及建立索引,然後單擊下一步。
Log Service預設開啟全文索引。您也可以根據採集到的日誌,手動建立欄位索引,或者單擊自動產生索引,Log Service將自動產生欄位索引。更多資訊,請參見建立索引。
配置樣本
Logtail外掛程式配置樣本
本樣本使用SNMPv2協議,團體名為
public
。"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" ] } } ],
採集結果
{"_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"}
Logtail外掛程式配置樣本
本樣本採用SNMPv3協議,查詢的目標機器組中僅有一台機器,使用者名稱為
snmpreadonly
,驗證協議為SHA
,驗證協議密碼為SecUREDpass
,隱私協議為AES
,隱私密碼為StRongPASS
。"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" } } ],
採集結果
{"_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"}
欄位說明
採集SNMP協議機器資訊後,日誌中存在如下固定欄位。
欄位 | 說明 |
欄位 | 說明 |
| 採集的目標機器IP地址。 |
| 目標機器在本外掛程式機器組中的排序。 本文的樣本中僅有一個目標機器 |
| 採集的目標物件識別碼經過本地管理資訊庫翻譯後的內容。 |
| 採集的目標物件識別碼。 |
| 對採集結果進行轉換的類型。
|
| 採集結果的類型。 |
| 採集內容。 |