67 lines
2.1 KiB
C
67 lines
2.1 KiB
C
|
|
/**
|
|||
|
|
* @file eqpalg/utility/build_alarm_info.h
|
|||
|
|
* @brief 构建报警信息
|
|||
|
|
* @author Cat (null.null.null@qq.com)
|
|||
|
|
* @version 0.1
|
|||
|
|
* @date 2021-09-17
|
|||
|
|
*
|
|||
|
|
* Copyright: Baosight Co. Ltd.
|
|||
|
|
* DO NOT COPY/USE WITHOUT PERMISSION
|
|||
|
|
*
|
|||
|
|
*/
|
|||
|
|
#pragma once
|
|||
|
|
#include <eqpalg/define/public.h>
|
|||
|
|
#include <string>
|
|||
|
|
#include "json/json.h"
|
|||
|
|
#include "mix_cc/type/range.h"
|
|||
|
|
|
|||
|
|
namespace utility {
|
|||
|
|
|
|||
|
|
using std::string;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief 构建报警信息
|
|||
|
|
* @param alarm_level 报警等级
|
|||
|
|
* @param ruleId 规则实例ID
|
|||
|
|
* @param name 规则实例名称
|
|||
|
|
* @param group 组
|
|||
|
|
* @param alarm_content 报警内容
|
|||
|
|
* @param time_range 时间范围
|
|||
|
|
* @return AlarmInfo
|
|||
|
|
*/
|
|||
|
|
AlarmInfo build_alarm_info(const string& alarm_level, const string& ruleId,
|
|||
|
|
const string& name, const string& group,
|
|||
|
|
const std::string& alarm_content,
|
|||
|
|
const mix_cc::time_range_t& time_range);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief 同上,增加了更多的参数,适用于带有范围信息的
|
|||
|
|
* @param alarm_level 报警等级
|
|||
|
|
* @param ruleId 规则实例ID
|
|||
|
|
* @param name 规则实例名称
|
|||
|
|
* @param group 组
|
|||
|
|
* @param alarm_content 报警内容
|
|||
|
|
* @param time_range 时间范围
|
|||
|
|
* @param value 报警的数值
|
|||
|
|
* @param desire_range 合理的区间范围
|
|||
|
|
* @return AlarmInfo
|
|||
|
|
*/
|
|||
|
|
AlarmInfo build_alarm_info(
|
|||
|
|
const string& alarm_level, const string& ruleId, const string& name,
|
|||
|
|
const string& group, const std::string& alarm_content,
|
|||
|
|
const std::vector<double>& value,
|
|||
|
|
const std::vector<mix_cc::float_range_t>& desire_range,
|
|||
|
|
const mix_cc::time_range_t& time_range);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief 根据上下限设置报警等级
|
|||
|
|
* @param limit_down My Param doc
|
|||
|
|
* @param limit_up My Param doc
|
|||
|
|
* @param value My Param doc
|
|||
|
|
* @return string
|
|||
|
|
* "WARN"--警告 偏差小于极限的30%
|
|||
|
|
* "ERROR"---异常 偏差大于等于极限的30%
|
|||
|
|
*/
|
|||
|
|
string get_msg_level(double limit_down, double limit_up, double value);
|
|||
|
|
} // namespace utility
|