以圖形表示印表機墨水存量使用率

Note: 此範例僅供說明之用,本公司不提供技術支援。Ipswitch 為內容物件、SNMP API 和指令碼環璄提供技術支援服務,但不對 JScript、VBScript,或動態指令碼監控工具或動作的開發及偵錯提供支援服務。如需此範例或自行編寫指令碼方面的協助,請造訪 WhatsUp Gold 使用者社群論壇

此效能監控工具會使用兩個參考變數,以輪詢並計算印表機的墨水存量使用率,供稍後繪圖之用。

Note: 本指令碼是以 HP MIB 為測試依據。

執行 SNMP MIB Walker 網路工具,檢查兩個參考變數的 OID,最後再調整其實例 (此例為 1.1):

1.3.6.1.2.1.43.11.1.1.8.1.1 與 1.3.6.1.2.1.43.11.1.1.9.1.1。

// prtMarkerSuppliesLevel is an snmp reference variable defined with an OID or 1.3.6.1.2.1.43.11.1.9 and an instance of 1.1
// prtMarkerSuppliesMaxCapacity is an snmp reference variable defined with an OID or 1.3.6.1.2.1.43.11.1.8 and an instance of 1.1

Context.LogMessage("Print the current marker level");
var prtMarkerSuppliesLevel = Context.GetReferenceVariable("prtMarkerSuppliesLevel");
Context.LogMessage("Print the maximum marker level");
var prtMarkerSuppliesMaxCapacity = Context.GetReferenceVariable("prtMarkerSuppliesMaxCapacity");

if (prtMarkerSuppliesMaxCapacity == null || prtMarkerSuppliesLevel == null) {
Context.SetResult(0, "Failed to poll printer ink levels.");
}
else {
Context.LogMessage("marker lever successfully retrieved");
var nPercentMarkerUtilization = 100 * prtMarkerSuppliesLevel / prtMarkerSuppliesMaxCapacity;
Context.LogMessage("Percent utilization=" + nPercentMarkerUtilization + "%");
Context.SetValue(nPercentMarkerUtilization);

另請參閱

動態指令碼效能監控工具範例

輪詢參考變數並計算

以圖形表示溫度監控工具

使用 SNMP GetNext

輪詢多個參考變數