ポーリング・データ・キューのサイズの調整
NCPOLLDATA データベースに書き込むためのポーリング・データのキューが大きくなりすぎると、データベースの問題やポーリング・ロードが大きいことが原因で、ポーリング・プログラムがメモリー不足になることがあります。 この問題をモニターして回避するために、キューのサイズについて制限を設定できます。 この制限は、バッチの数として定義されます。 この制限を超えると、ログおよび 「イベント・ビューアー」にアラートが表示されます。 その場合、ポーリング・プログラムは、キューに入れられたデータを破棄して、キューのサイズを減らします。 破棄されたデータは別のファイルに書き込まれます。
ポーリング・プログラムのデバッグ・レベルを 4 に設定します。
PollDataQueueLimit パラメーターによって指定された制限をキューが超過した場合、以下のアクションが実行されます。
- 「イベント・ビューアー」にアラートが表示されます。 例:
ItnmPollerPolicyDataQueueFull: ポーリング・プログラム NCOMS。ポーリング・データ・キューがキャパシティーを超過しました。データをファイルにオフロードしています
- メッセージがログに書き込まれます。 例:
2013-04-19T12:37:58 [CDataQueue::ProcessValue] Queue size exceeds threshold, discarding data: policyId:122:templateId:39:monitoredInstanceId:2212:monitoredObjectId:3:pollTime:1387232947:tdwTime:1131216222944000:errorCode:111:value:0
- ポーリング・データがキューから破棄され、$NCHOME/log/precision/ncp_poller.poller
name.domain.polldata ファイル (例えば、ncp_poller.poller name.domain.data) に書き込まれます。 このデータは通知のみを目的としたものであり、ポーリング・データベースに挿入することはできません。 例:
MONITOREDOBJECTID,5, MONITOREDINSTID,184, POLLTIME,1447960873, ERRORCODE,100, VALUE, 0 MONITOREDOBJECTID,6, MONITOREDINSTID,184, POLLTIME,1447960873, ERRORCODE,100, VALUE, -1 MONITOREDOBJECTID,5, MONITOREDINSTID,248, POLLTIME,1447960873, ERRORCODE,100, VALUE, 100
制限を超過した場合、以下のようにします。
- ポーリング・データ・キューのサイズを解決します。 例えば、追加のポーリング・プログラムを作成したり、データベース管理者に連絡したりします。
- 「イベント・ビューアー」からアラートをクリアします。
- .polldata ファイルをクリアします。 このファイルは、自動的にクリアもローテートもされません。