2012-04-03 190 views
3

我需要使用名爲Zenoss的監視工具在多個服務器上設置進程監視器。我面臨的問題是如何通過SNMP獲取有關特定進程的信息?我完全不熟悉SNMP,並且無法找到所需的東西。SNMP - 從進程獲取信息

我一直在嘗試使用名爲SNMP-Probe的工具,但它似乎只提供基本的系統信息,沒有任何我需要或可以使用的東西。

這裏的任何幫助表示讚賞。

回答

2

你需要的是查詢hrSWRunTable爲了收集您需要的信息。即使這兩個信息存儲在另一個MIB(hrSWRunPerfEntry)中,該MIB也爲您提供許多信息,例如進程名稱,路徑,類型,狀態,參數,CPU和RAM使用情況。然而,你如何做「查詢」取決於你使用的環境,我幾乎可以肯定的是,vbs包含一個SNMP庫。

0

不幸的是,我無法確切知道如何做到這一點。我結束了在每臺機器上使用vbs腳本來查找不正常的進程並自動將其殺死。

0

,我只是工作在同樣的事情

snmpwalk的-v2c -c公共xxx.xxx.xxx.xxx .1.3.6.1.2.1.25.4.2.1.2

HOST-RESOURCES-MIB :: hrSWRunName

+0

對於表,NetSnmp的運行snmptable,使其比snmpwalk的友好格式的輸出。 – k1eran 2015-03-20 19:18:36

1

這是一個通過NetSnmp從Linux主機檢索的示例。 (我會增加,這個是從@ raz3r接受的答案評論,但我想格式化文本的能力!)

snmptable -v2c -Ci -c public myserver HOST-RESOURCES-MIB::hrSWRunTable 
SNMP table: HOST-RESOURCES-MIB::hrSWRunTable 

index hrSWRunIndex  hrSWRunName    hrSWRunID      hrSWRunPath                             hrSWRunParameters hrSWRunType hrSWRunStatus 
    1   1   "init" SNMPv2-SMI::zeroDotZero      "/sbin/init"                                 "" application  runnable 
    2   2  "kthreadd" SNMPv2-SMI::zeroDotZero       "kthreadd"                                 "" application  runnable 
    3   3  "ksoftirqd/0" SNMPv2-SMI::zeroDotZero      "ksoftirqd/0"                                 "" application  runnable 
// other rows snipped for brevity