Exemplo n.º 1
0
 /**
  * 添加监控适配器 archive 
  * 
  * @access public
  * @return void
  */
 public function add_archive(\lib\member\property\sw_madapter_archive $property)
 {
     $property_basic = $this->get_madapter_operator()->get_madapter_basic_property();
     $attributes = $property_basic->attributes();
     if (!isset($attributes['madapter_id'])) {
         throw new sw_exception("unknow madapter id.");
     }
     $madapter_id = $attributes['madapter_id'];
     $attributes = $property->attributes();
     $this->_validate($madapter_id);
     if (!isset($attributes['archive_id'])) {
         $archive_id = \lib\sequence\sw_sequence::get_next_madapter($madapter_id, SWAN_TBN_MADAPTER_ARCHIVE);
     } else {
         $archive_id = $attributes['archive_id'];
     }
     $property->set_archive_id($archive_id);
     $property->set_madapter_id($madapter_id);
     $attributes = $property->attributes();
     $require_fields = array('archive_id', 'madapter_id', 'cf_type', 'xff', 'steps', 'rows', 'title');
     $this->_check_require($attributes, $require_fields);
     $this->__db->insert(SWAN_TBN_MADAPTER_ARCHIVE, $attributes);
     return $archive_id;
 }
Exemplo n.º 2
0
 /**
  * 添加监控适配器 metric 
  * 
  * @access public
  * @return void
  */
 public function add_metric(\lib\member\property\sw_madapter_metric $property)
 {
     $property_basic = $this->get_madapter_operator()->get_madapter_basic_property();
     $attributes = $property_basic->attributes();
     if (!isset($attributes['madapter_id'])) {
         throw new sw_exception("unknow madapter id.");
     }
     $madapter_id = $attributes['madapter_id'];
     $attributes = $property->attributes();
     $this->_validate($madapter_id, $attributes['metric_name']);
     if (!isset($attributes['metric_id'])) {
         $metric_id = \lib\sequence\sw_sequence::get_next_madapter($madapter_id, SWAN_TBN_MADAPTER_METRIC);
     } else {
         $metric_id = $attributes['metric_id'];
     }
     $property->set_metric_id($metric_id);
     $property->set_metric_name($attributes['metric_name']);
     $property->set_madapter_id($madapter_id);
     $attributes = $property->attributes();
     $require_fields = array('metric_id', 'madapter_id', 'metric_name', 'collect_every', 'time_threshold');
     $this->_check_require($attributes, $require_fields);
     $this->__db->insert(SWAN_TBN_MADAPTER_METRIC, $attributes);
     return $metric_id;
 }