Monitor(積算量)モニタとアラーム
1224 ワード
Monitor(積算量)モニタとアラーム
[TOC]
プログラム
使用
分曲線、積算量、昨日曲線、日単位で重畳し、種類別に重畳します。
http://monitor.corp.ucfgroup.com/?key=CHARGE_COUNT
権限問題(TODO):一人一人は自分が追加した監視カメラしか確認できません。
実現する
その時のカウント:前の分のRedis::get('…')一回;前年同期比変動:先分Redis::get('…')は、増減幅を比較した。ループ比変動:昨日同分Db:select()一回、コントラスト増減幅;ピーク警告:config設定値を比較する。
性能に影響する
この方案はオンラインに対する影響は各点に一回のredisインタラクションである。
最適化方案(TODO):共有メモリ+タイミングでRedisを書き込む方式で、Redis圧力を緩和し、マシンごとにAgentを配置する必要がある。 簡単なログを書き、ログ同期機構を利用して収集する。ログ形式は以下の通りです。 異常捕獲、Redis切断はプログラム実行に影響しません。 コードレベルスイッチの設定は、オンラインでオフすることができます。
[TOC]
プログラム
使用
//
Monitor::add('CHARGE_COUNT');
実現するRedis::incr('MONITOR_CHARGE_COUNT'.date('YmdHi'));
レポート分曲線、積算量、昨日曲線、日単位で重畳し、種類別に重畳します。
http://monitor.corp.ucfgroup.com/?key=CHARGE_COUNT
権限問題(TODO):一人一人は自分が追加した監視カメラしか確認できません。
実現する
// ( )
for ($i = 0; $i < $min; $i++) {
Redis::get('MONITOR_CHARGE_COUNT');
}
//0 Db
foreach ($monitors as $item)
{
for ($i = 0; $i < 1440; $i++) {
$ret = Redis::get(...);
Db::insert($ret);
}
}
//
Db::select('create_time=...');
警告するその時のカウント:前の分のRedis::get('…')一回;前年同期比変動:先分Redis::get('…')は、増減幅を比較した。ループ比変動:昨日同分Db:select()一回、コントラスト増減幅;ピーク警告:config設定値を比較する。
性能に影響する
この方案はオンラインに対する影響は各点に一回のredisインタラクションである。
最適化方案(TODO):
//
1449900092 CHARGE_COUNT 1
1449900092 WITHDRAW_COUNT 1
1449900092 CHARGE_COUNT 1
デザイン