プリンタのインクレベルと使用率の監視

メモ この例は説明のために示されているに過ぎず、実際にはサポートされていません。Ipswitch は、Context オブジェクト、SNMP API、およびスクリプティング環境については、テクニカルサポートを提供しますが、JScript、VBScript、およびアクティブスクリプトのモニタとアクションの開発とデバッグについては、サポートを提供しません。この例および自社独自のスクリプトを作成することに関する援助については、WhatsUp Gold ユーザーコミュニティにアクセスしてください。

このアクティブモニタはプリンタ MIB のオブジェクトをポーリングして、インクレベルの情報を収集し、インクの使用率 (%) を計算します。

使用率がスクリプトの 1 行目に設定されている値を超えると、アクティブモニタはアラートを発信します。

メモ このスクリプトは HP MIB でテスト済みのものです。

SNMP MIB Walker ツールを実行して、2 つのポーリングされたオブジェクトの 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.

メモ このスクリプトは、単にコード例として含めたものです。プリンタの監視には、プリンタアクティブモニタを使用します。

var nMarkerPercentUtilization = 70; // プリンタのインク使用率がこの値 (%) より上の場合このモニタは失敗します。
var oSnmpRqst = new ActiveXObject("CoreAsp.SnmpRqst");
var nDeviceID = Context.GetProperty("DeviceID");
var oComResult = oSnmpRqst.Initialize(nDeviceID);
if (oComResult.Failed) {
Context.SetResult(1, oComResult.GetErrorMsg);
}
else {
// 2 つのカウンタをポーリング
Context.LogMessage("Polling marker maximum level");
var oResponse = oSnmpRqst.Get("1.3.6.1.2.1.43.11.1.1.8.1.1");
if (oResponse.Failed) {
Context.SetResult(1, oResponse.GetErrorMsg);
}
var prtMarkerSuppliesMaxCapacity = oResponse.GetValue;
Context.LogMessage("Success.Value=" + prtMarkerSuppliesMaxCapacity);

Context.LogMessage("Polling marker current level");
oResponse = oSnmpRqst.Get("1.3.6.1.2.1.43.11.1.1.9.1.1");
if (oResponse.Failed) {
Context.SetResult(1, oResponse.GetErrorMsg);
}
var prtMarkerSuppliesLevel = oResponse.GetValue;
Context.LogMessage("Success.Value=" + prtMarkerSuppliesLevel);

var nPercentUtilization = 100 * prtMarkerSuppliesLevel / prtMarkerSuppliesMaxCapacity;

if (nPercentUtilization > nMarkerPercentUtilization) {
Context.SetResult(1, "Failure.Current Utilization (" + (nPercentUtilization + "%) is above the configured threshold (" + nMarkerPercentUtilization) + "%)");
}
else {
Context.SetResult(0, "Success.Current Utilization (" + (nPercentUtilization + "%) is below the configured threshold (" + nMarkerPercentUtilization) + "%)");
}
}

参照

アクティブスクリプトのアクティブモニタの例

温度が範囲外になったときにアラート発信

無効ユーザーアカウントアクティビティの確認

インターフェイスでの帯域幅の使用率の監視

非標準ポートで実行中の SNMP エージェントの監視

不明な MAC アドレスの監視