预警信息推送方法、装置、电子设备及存储介质与流程

文档序号:24351486发布日期:2021-03-19 12:36阅读:127来源:国知局
本申请涉及数据处理
技术领域
:,具体而言,涉及一种预警信息推送方法、装置、电子设备及存储介质。
背景技术
::预警是每一款软件产品都得具备的基础设施,不管是软件产品开发还是后期的运维还是上线后的运营,预警贯穿于软件产品的整个周期,因此各个软件公司都在不断地投入人力从无到有的建设预警平台。对于开发者、运维人员、主要关注服务、接口、cpu、内存、资源、网络等系统性指标、对于业务人员、运营人员、数据分析员等主要关注业务指标,当上述各个业务指标出现波动时,代表存在一定的风险和问题,需要及时去排查定位,核实是问题就得及时维修止损。预警系统主要是用来管理系统或者产品中发生的一些异常,并发出预警信息并及时推送用户。目前市面上的预警产品基本是定制化的,仅能配置一些简单的规则对于复杂的跨纬度、跨粒度、跨时间进行多项式运算并不支持、同时不能针对不同的业务场景进行预警推送,存在预警信息推送适用性低的问题。技术实现要素:本申请的实施例在于提供一种预警信息推送方法、装置、电子设备及存储介质,以解决目前预警产品的预警信息推送的适用性低的问题。本申请的实施例提供了一种预警信息推送方法,所述方法包括:基于预警业务的不同类别建立的各个类目录树进行指标视图配置得到各个类目录树图,每个所述类目录树包括不同维度的预警业务指标;通过拖拽组件为所述类目录树图上的各个所述预警业务指标设置第一拖拽事件、通过所述拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,其中,所述拖拽排序事件用于设定所述第一拖拽事件、所述第二拖拽事件以及所述第一拖拽进入事件的执行顺序;基于与各个所述预警业务对应的所述预警业务指标、与各个所述预警业务对应的所述运算符、所述第一拖拽事件、所述第二拖拽事件、所述第一拖拽进入事件以及所述拖拽排序事件生成对应的预警规则,所述运算符包括算数运算符、逻辑运算符以及关系运算符中的至少一种;对各个所述预警规则进行定时设置;基于所述定时设置以及目标预警规则触发预警计算得到当前预警信息,所述目标预警规则为所述预警规则中的任意一个;将所述当前预警信息与历史预警信息进行图文推送。在上述实现过程中,通过将各个所述预警业务指标设置第一拖拽事件、通过拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,针对不同的所述预警业务能够拖拽不同的所述预警业务指标、不同的运算符、不同的第一拖拽事件以及不同的拖拽排序事件生成与所述预警业务适应的所述预警规则,基于不同的所述预警业务对应的不同的所述预警规则进行定时设置后进行预警计算得到与目标预警业务对应的当前预警信息,以适应不同预警业务场景下的预警信息推送,提高预警信息推送的适用性。可选地,所述基于预警业务的不同类别建立的各个类目录树进行指标视图配置得到各个类目录树图,每个所述类目录树包括不同维度的预警业务指标,包括:针对每个类目录树,对所述类目录树进行结构预处理得到结构预处理指标数据,所述结构预处理数据包括所述类目录树中的每个节点的构造展示文本、所述每个节点的节点宽度值以及所述每个节点的添加层信息;将所述各个类目录树的结构预处理指标数据以及所述各个类目录树的贝塞尔曲线与页面视图容器连接,得到所述各个类目录树对应的连接后类目录树图;针对每个连接后类目录树图,基于所述连接后类目录树图计算所述连接后类目录树图中的每一层节点之间的节点距离以及每一层节点之间的节点距离与所述每一层节点的所述节点宽度值的宽度比值;基于所述节点距离、所述宽度比值以及所述每个节点的构造展示文本的内容长度,设置所述每个节点的展开尺寸以及收缩尺寸;基于所述连接后类目录树图、所述展开尺寸以及所述收缩尺寸生成类目录树图。在上述实现过程中,通过将所述各个预处理指标数据、所述各个贝塞尔曲线与所述页面视图容器连接,以对所述各个类目录树进行图形显示,通过所述节点距离、所述宽度比值以及所述每个节点的构造展示文本的内容长度设置所述每个节点的展开尺寸以及收缩尺寸以便在所述各个类目录树进行图形显示时节点的尺寸适应所述展示文本的内容长度,提高对所述各个类目录树进行图形显示的美观性。可选地,所述通过拖拽组件为各个所述预警业务指标设置第一拖拽事件、通过拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,包括:将各个所述预警业务指标、各个所述运算符以及所述预警规则分布在不同的区域;在各个所述预警业务指标所在的区域中通过draggable组件将各个所述预警业务指标与所述第一拖拽事件绑定;在各个所述运算符所在的区域中通过draggable组件将各个所述运算符与第二拖拽事件绑定;在所述预警规则容器所在的区域中通过draggable组件将所述预警规则容器与第一拖拽进入事件和拖拽排序事件。在上述实现过程中,将各个所述预警业务指标与所述第一拖拽事件绑定、将各个所述运算符与所述第二拖拽事件绑定并将所述预警规则容器与所述第一拖拽进入事件和所述拖拽排序事件绑定,能够将各个所述预警业务指标以及各个所述运算符拖入所述预警规则容器所在的区域生成与不同预警业务相适应的不同的预警规则,提高设置预警规则的灵活性。可选地,所述对各个所述预警规则进行定时设置,包括:通过cron表达式设置定时页面,以对各个所述预警业务的预警计算进行定时设置。在上述实现过程中,所述cron表达式是一个字符串,通过cron表达式进行定时设置能够生成对话框对进行可视化定时设置,提高预警计算定时设置的简便性。可选地,所述基于所述定时设置以及目标预警规则触发预警计算得到当前预警信息,包括:对所述各个类目录树进行接口配置得到所述各个类目录树的数据接口;基于目标预警业务匹配对应的目标预警规则的识别码;将所述识别码存入预警执行队列;对所述预警执行队列中的所述识别码进行解析,得到参与预警计算的目标预警业务指标;基于所述目标预警业务对应的所述类目录树的数据接口读入所述目标预警业务指标的目标数据;通过boolformulas接口将所述目标数据传入所述目标预警规则计算得到所述当前预警信息。在上述实现过程中,在执行预警计算时从预警执行队列中基于不同的所述识别码进行解析得到与所述各个目标预警规则对应的各个所述预警业务指标,基于所述各个目标预警业务对应的所述各个类目录树的数据接口读入所述目标预警业务指标的目标数据后,通过所述boolformulas接口将所述各个目标数据传入所述各个目标预警规则进行计算得到与所述各个目标预警业务对应的所述各个当前预警信息,提高所述当前预警信息与预警业务场景的匹配适用性。可选地,所述基于所述指标视图配置将所述当前预警信息与历史预警信息进行图文推送,包括:基于所述目标预警业务对应的所述类目录树的目标数据以及所述预警信息生成预警文本信息;基于生成图标的类库将所述历史预警信息生成预警网页;将所述预警网页进行保存并生成推送链接;基于指定推送方式将所述预警文本信息以及所述推送链接进行推送。在上述实现过程中,将所述预警文本信息以及所述推送链接以所述指定推送方式进行推送,以便用户以接收图文形式的基于指定推送方式将所述预警文本信息以及所述推送链接进行推送后用户会接收到预警文本信息以及电机所述推送链接后得到的图片形式的所述历史预警信息,提高用户接收到的所述预警信息的直观性。本申请的实施例提供了一种预警信息推送装置,所述预警信息推送装置包括:视图配置模块,用于基于预警业务的不同类别建立的各个类目录树进行指标视图配置得到各个类目录树图,每个所述类目录树包括不同维度的预警业务指标;事件配置模块,用于通过拖拽组件为所述类目录树图上的各个所述预警业务指标设置第一拖拽事件、通过所述拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,其中,所述拖拽排序事件用于设定所述第一拖拽事件、所述第二拖拽事件以及所述第一拖拽进入事件的执行顺序;规则配置模块,用于基于与各个所述预警业务对应的所述预警业务指标、与各个所述预警业务对应的所述运算符、所述第一拖拽事件、所述第二拖拽事件、所述第一拖拽进入事件以及所述拖拽排序事件生成对应的预警规则,所述运算符包括算数运算符、逻辑运算符以及关系运算符中的至少一种;定时配置模块,用于对各个所述预警规则进行定时设置;计算模块,用于基于所述定时设置以及目标预警规则触发预警计算得到当前预警信息,所述目标预警规则为所述预警规则中的任意一个;推送模块,用于将所述当前预警信息与历史预警信息进行图文推送。在上述实现过程中,通过将各个所述预警业务指标设置第一拖拽事件、通过拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,针对不同的所述预警业务能够拖拽不同的所述预警业务指标、不同的运算符、不同的第一拖拽事件以及不同的拖拽排序事件生成与各个所述预警业务适应的各个所述预警规则,基于不同的所述预警业务对应的不同所述预警规则进行定时设置后进行预警计算得到与目标预警业务对应的当前预警信息,以适应不同预警业务场景下的预警信息推送,提高预警信息推送的适用性。可选地,所述视图配置模块用于:针对每个类目录树,对所述类目录树进行结构预处理得到结构预处理指标数据,所述结构预处理数据包括所述类目录树中的每个节点的构造展示文本、所述每个节点的节点宽度值以及所述每个节点的添加层信息;将所述各个类目录树的结构预处理指标数据以及所述各个类目录树的贝塞尔曲线与页面视图容器连接,得到所述各个类目录树对应的连接后类目录树图;针对每个连接后类目录树图,基于所述连接后类目录树图计算所述连接后类目录树图中的每一层节点之间的节点距离以及每一层节点之间的节点距离与所述每一层节点的所述节点宽度值的宽度比值;基于所述节点距离、所述宽度比值以及所述每个节点的构造展示文本的内容长度,设置所述每个节点的展开尺寸以及收缩尺寸;基于所述连接后类目录树图、所述展开尺寸以及所述收缩尺寸生成类目录树图。在上述实现过程中,通过将所述各个预处理指标数据、所述各个贝塞尔曲线与所述页面视图容器连接,以对所述各个类目录树进行图形显示,通过所述节点距离、所述宽度比值以及所述每个节点的构造展示文本的内容长度设置所述每个节点的展开尺寸以及收缩尺寸以便在所述各个类目录树进行图形显示时节点的尺寸适应所述展示文本的内容长度,提高对所述各个类目录树进行图形显示的美观性。可选地,事件配置模块用于:将各个所述预警业务指标、各个所述运算符以及所述预警规则分布在不同的区域;在各个所述预警业务指标所在的区域中通过draggable组件将各个所述预警业务指标与所述第一拖拽事件绑定;在各个所述运算符所在的区域中通过draggable组件将各个所述运算符与第二拖拽事件绑定;在所述预警规则容器所在的区域中通过draggable组件将所述预警规则容器与第一拖拽进入事件和拖拽排序事件。在上述实现过程中,将各个所述预警业务指标与所述第一拖拽事件绑定、将各个所述运算符与所述第二拖拽事件绑定并将所述预警规则容器与所述第一拖拽进入事件和所述拖拽排序事件绑定,能够将各个所述预警业务指标以及各个所述运算符拖入所述预警规则容器所在的区域生成与不同预警业务相适应的不同的预警规则,提高设置预警规则的灵活性。可选地,定时配置模块用于:通过cron表达式设置定时页面,以对各个所述预警业务的预警计算进行定时设置。在上述实现过程中,所述cron表达式是一个字符串,通过cron表达式进行定时设置能够生成对话框对进行可视化定时设置,提高预警计算定时设置的简便性。可选地,所述计算模块用于:对所述各个类目录树进行接口配置得到所述各个类目录树的数据接口;基于目标预警业务匹配对应的目标预警规则的识别码;将所述识别码存入预警执行队列;对所述预警执行队列中的所述识别码进行解析,得到参与预警计算的目标预警业务指标;基于所述目标预警业务对应的所述类目录树的数据接口读入所述目标预警业务指标的目标数据;通过boolformulas接口将所述目标数据传入所述目标预警规则计算得到所述当前预警信息。在上述实现过程中,在执行预警计算时从预警执行队列中基于不同的所述识别码进行解析得到与所述各个目标预警规则对应的各个所述预警业务指标,基于各个所述目标预警业务对应的所述类目录树的数据接口读入所述目标预警业务指标的目标数据后,通过所述boolformulas接口将各个所述目标数据传入各个所述目标预警规则进行计算得到与各个所述目标预警业务对应的各个所述当前预警信息,提高所述当前预警信息与预警业务场景的匹配适用性。可选地,所述推送模块用于:基于所述目标预警业务对应的所述类目录树的目标数据以及所述预警信息生成预警文本信息;基于生成图标的类库将所述历史预警信息生成预警网页;将所述预警网页进行保存并生成推送链接;基于指定推送方式将所述预警文本信息以及所述推送链接进行推送。在上述实现过程中,将所述预警文本信息以及所述推送链接以所述指定推送方式进行推送,以便用户以接收图文形式的基于指定推送方式将所述预警文本信息以及所述推送链接进行推送后用户会接收到预警文本信息以及电机所述推送链接后得到的图片形式的所述历史预警信息,提高用户接收到的所述预警信息的直观性。本实施例还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器运行所述程序指令时,执行上述任意方法中的步骤。本实施例还提供了一种存储介质,所述存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器运行时,执行上述任意方法中的步骤。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。图1为本申请实施例提供的一种预警信息推送方法的流程图。图2为本申请实施例提供的一种类目录树指标视图配置的步骤的流程图。图3为本申请实施例提供的一种拖拽组件绑定拖拽事件的步骤的流程图。图4为本申请实施例提供的一种得到当前预警信息的步骤的流程图。图5为本申请实施例提供的一种进行图文推送的步骤的流程图。图6为本申请实施例提供的一种预警信息推送装置示意图。图例:70-预警信息推送装置;701-视图配置模块;702-事件配置模块;703-规则配置模块;704-定时配置模块;705-计算模块;706-推送模块。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。在本申请的描述中,需要说明的是,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书、以及附图中所特别指出的结构来实现和获得。为了提高预警信息推送的适用性,本申请的实施例提供了一种预警信息推送方法,请参看图1,图1为本申请实施例提供的一种预警信息推送方法的流程图,所述预警信息推送方法包括以下分步骤:步骤s1:基于预警业务的不同类别建立的各个类目录树进行指标视图配置得到各个类目录树图,每个类目录树包括不同维度的预警业务指标。可以理解的是,预警业务可以根据实际业务场景确定,例如在信贷类软件的预警业务里面有测试类业务、估计类业务等类别的预警业务,以测试类业务为例,测试类业务的类目录树中的根维度处的指标为全机构,这里的全机构是用于表示所有的信贷机构的指标。类目录树图中同一深度的节点的维度相同,根节点的相邻子节点的深度相同因此所述相邻子节点维度相同,为了方面描述,将根节点的子节点即第一子节点的维度命名为第一维度,第一维度的预警业务指标可以包括银行、非助贷机构、非银行机构,将第一子节点的子节点命名为第二子节点,第二子节点的维度命名为第二维度,第二维度的预警业务指标可以包括国有银行、非国有银行等,将第二子节点的子节点命名为第三子节点,第三子节点的维度命名为第三维度,第三维度的预警业务指标可以包括平均授信利率、体现拒绝人数、体现拒绝率、放款金额、核准率、扫码人数、注册人数等。作为一种实施方式,可以对第三维度的预警业务指标的粒度进行设置,例如可供选择的粒度包括1分钟窗口量、5分钟窗口量、半小时窗口量、当天累积量、1分钟7天窗口平均值、5分钟7天窗口平均值、半小时7天窗口量、1分钟日环比、5分钟日环比、半小时日环比等,具体粒度的大小可以根据具体预警业务进行设定,并不唯一。作为一种实施方式,用户可以增加类目录树的维度以提高类目录树对预警业务的匹配程度,可以在类目录树上可以新增维度,如果预警业务中的指定数据不具有维度,例如性别不属于上述任何第一维度、第二维度以及第三维度,也可以为不具有维度的预警业务指标设置虚拟维度,将不具有维度的预警业务指标添加在类目录树中,保持预警业务指标的完整性。请参看图2,图2为本申请实施例提供的一种类目录树指标视图配置的步骤的流程图。可选地,步骤s1包括以下分步骤:步骤s11:针对每个类目录树,对类目录树进行结构预处理得到结构预处理指标数据,结构预处理数据包括类目录树中的每个节点的构造展示文本、每个节点的节点宽度值以及每个节点的添加层信息。可以理解的是,通过获取节点的构造展示文本是类目录树在进行图像显示时各个节点旁边进行标注说明的文字信息,节点宽度值确定节点进行图像显示时的节点的尺寸信息,节点的添加层信息确定每个节点所在的图层,提高类目录树修改的便利程度,避免在不加添加层时图形修改的重复劳动。步骤s12:将各个类目录树的结构预处理指标数据以及各个类目录树的贝塞尔曲线与页面视图容器连接,得到各个类目录树对应的连接后类目录树图。可以理解的是,可以采用d3将各个类目录树进行图形化显示,d3是一个javascript的函数库。将各个类目录树的结构预处理指标数据以及各个类目录树的贝塞尔曲线与页面视图容器连接也就是通过结构预处理指标数据以及贝塞尔曲线构造树状图,也就是确定了构建视图化的类目录树的类目录树的节点、确定各个节点的布局以及节点之间用于表示父子关系的曲线。步骤s13:针对每个连接后类目录树图,基于连接后类目录树图计算连接后类目录树图中的每一层节点之间的节点距离以及每一层节点之间的节点距离与每一层节点的节点宽度值的宽度比值。步骤s14:基于节点距离、宽度比值以及每个节点的构造展示文本的内容长度,设置每个节点的展开尺寸以及收缩尺寸。,步骤s15:基于连接后类目录树图、展开尺寸以及收缩尺寸生成类目录树图。在步骤s13以及步骤s14中,可以理解的是,在步骤s12中基于类目录树的类目录树的节点、确定各个节点的布局以及节点之间用于表示父子关系的曲线构建了视图化的类目录树的结构,因此通过定位各个节点能够得到同一层节点之间的节点距离,并基于步骤s11中得到的每个节点的节点宽度值,就可以得到每一层节点之间的节点距离与每一层节点的节点宽度值的宽度比值,基于节点距离、宽度比值以及每个节点的构造展示文本的内容长度,设置每个节点的展开尺寸以及收缩尺寸,以使用户在对节点进行点击节点进行展开或者收缩时实现节点尺寸与每个节点的构造展示文本的内容长度相适应,提高类目录树图形化展示的美观性。步骤s2:通过拖拽组件为类目录树图上的各个预警业务指标设置第一拖拽事件、通过拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,其中,拖拽排序事件用于设定第一拖拽事件、第二拖拽事件以及第一拖拽进入事件的执行顺序。可以理解的是,将各个预警业务指标于第一拖拽事件、各个预警业务指标以及预警规则容器与第二拖拽事件、预警规则容器与第一拖拽进入事件和拖拽排序事件进行绑定,能够使得将表示各个预警业务指标的图标、在拖拽表示各个运算符的图标拖拽进入预警规则容器,以灵活组合不同的预警业务指标以及不同的运算符生成不同的预警规则适应不同的预警业务,提高得到预警规则的灵活性。请参看图3,图3为图3为本申请实施例提供的一种拖拽组件绑定拖拽事件的步骤的流程图。可选地,步骤s2包括以下分步骤:步骤s21:将各个预警业务指标、各个运算符以及预警规则分布在不同的区域。可以理解的是,将预警业务指标、运算符以及预警规则进行分区显示,便于从预警业务指标、运算符对应的区域选定对应于预警业务的预警业务指标、运算符进入预警规则所在的区域并生成预警规则。步骤s22:在各个预警业务指标所在的区域中通过draggable组件将各个预警业务指标与第一拖拽事件绑定。可以理解的是,draggable为基于sortable.js的vue组件,用以实现拖拽功能。通过draggable组件将各个预警业务指标与第一拖拽事件绑定,用户能够实现拖拽不同预警业务指标。步骤s23:在各个运算符所在的区域中通过draggable组件将各个运算符与第二拖拽事件绑定。可以理解的是,运算符包括算数运算符、逻辑运算符以及关系运算符,其中算数运算符包括“+、-、*、/”,关系运算符包括“>、>=、<、<=、==、!=”、逻辑运算符“&&、||、!”以及进行取值的运算符“max、min、abs、sqrt”等运算符。可以理解的是,步骤s23运算符不仅仅支持简单的算术运算,也支持逻辑运算以及关系运算,不同种类的运算符能够使得基于运算符的预警规则更加复杂,提高预警规则的复杂度以适应复杂的预警任务。步骤s24:在预警规则容器所在的区域中通过draggable组件将预警规则容器与第一拖拽进入事件和拖拽排序事件。可以理解的是,将预警规则容器与第一拖拽进入事件和拖拽排序事件,能够便于通过第一拖拽事件将拖拽的预警业务指标以及不同的运算符放置入预警规则容器所在的区域,通过拖拽排序事件设定第一拖拽事件以及第二拖拽事件的触发顺序,保证按照拖拽排序事件中规定触发顺序进行预警计算,提高得到当前预警信息的准确性。步骤s3:基于与预警业务对应的预警业务指标、与预警业务对应的运算符、第一拖拽事件、第二拖拽事件、第一拖拽进入事件以及拖拽排序事件生成对应的预警规则,运算符包括算数运算符、逻辑运算符以及关系运算符中的至少一种。步骤s4:对各个预警规则进行定时设置。可选地,步骤s4包括:通过cron表达式设置定时页面,以对所述预警业务的预警计算进行定时设置。可以理解的是,cron表示计划任务,是任务在约定的时间执行已经计划好的工作。在linux系统中,可以通过cron服务器来完成定时设置工作。cron服务器可以根据配置文件约定的时间来执行定时设置的任务。cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,cron表达式有两种语法格式:secondsminuteshours-dayofmonth-month-dayofweek-year(秒-分-时-天-月-星期-年)或者seconds-minutes-hours-dayofmonth-monthdayofweek(秒-分-时-天-月-星期),可以根据实际情况在cron表达式设定目标预警规则的触发时间。通过cron表达式进行定时设置能够生成对话框对进行可视化定时设置,提高定时设置的简便性。步骤s5:基于定时设置以及目标预警规则触发预警计算得到当前预警信息。请参看图4,图4为本申请实施例提供的一种得到当前预警信息的步骤的流程图。可选地,步骤s5包括以下分步骤:步骤s51:对各个类目录树进行接口配置得到各个类目录树的数据接口。作为一种实施方式,数据接口包括sql(structuredquerylanguage,结构化查询语言)接口、http(hypertexttransferprotocol超文件传输协定)接口、api(applicationprograminterface应用程序接口)等不同的接口,通过请求配置后的各个类目录树的数据接口以得到各个类目录树的目标预警业务指标的目标数据。步骤s52:基于目标预警业务匹配对应的目标预警规则的识别码。可以理解的是,目标预警规则是预警规则中的任意一个。作为一种事实方式,在步骤s3中在生成预警规则时,生成预警规则的识别码与预警业务一一对应并将这种对应关系保存在数据库中,因此可以根据目标预警业务以及数据库中预警业务与预警规则的识别码的对应关系匹配得到目标预警业务匹配对应的目标预警规则的识别码。步骤s53:将识别码存入预警执行队列。步骤s54:对预警执行队列中的识别码进行解析,得到参与预警计算的目标预警业务指标。作为一种实施方式,可以通过使用dsl(domain-specificlanguages,领域专用语言)对预警规则的表达式进行解析,dsl是针对某一领域具有受限表达性的一种计算机程序设计语言,dsl的受限表达性可以使dsl语言不易出错,即便出错也易于发现。步骤s55:基于目标预警业务对应的类目录树的数据接口读入目标预警业务指标的目标数据。可以理解的是,当目标数据存储在sql中时,通过sql接口在目标数据所在的数据库中执行sql语句查询数据。对于数据接口为api、http接口时,则分别通过api、http接口查询方法获取目标数据。作为一种实施方式,可以根据不同粒度的目标数据设置不同的数据获取方式,例如粒度为1分钟周同比时配置指定数据获取方式,以实现预警业务指标不同粒度的动态获取。作为一种实施方式,可以将目标预警业务指标的目标数据存入到map集合中,map集合用于保存具有映射关系的数据,map集合里保存着两组值,一组用于保存map集合的关键字另一组保存着map集合的键值。步骤s56:通过boolformulas接口将目标数据传入目标预警规则计算得到当前预警信息。作为一种实施方式,可以通过利用scala解析组合子基于目标数据得到当前预警信息。具体方法如下:首先,编写目标预警规则的dsl文法,可以理解的是,文法是一个表达式的递归表示方式。其次,继承目标数据的关键字字符集,然后通过scala解析组合子,编写出目标预警规则的文法和语法,并实现目标预警规则中第一拖拽事件以及第二拖拽事件涉及的函数和目标预警规则中的运算符。最后,封装目标预警规则的计算接口,例如将目标预警规则中的条件接口封装为boolformulas(),将目标预警规则中的数值接口封装为doubleformulas()。根据目标预警规则调用boolformulas(),将步骤s55中存入map集合中的目标数据进行获取计算得到预警信息,当预警信息为真时,表明满足预警条件。当预警信息为假时表明不满足预警条件。步骤s6:将当前预警信息与历史预警信息进行图文推送。请参看图5,图5为本申请实施例提供的一种进行图文推送的步骤的流程图。可选地,步骤s6包括以下分步骤:步骤s61:基于目标预警业务对应的类目录树的目标数据以及预警信息生成预警文本信息。当预警信息的值为真时,作为一种实施方式,可以根据配置好的文本模板,例如"${dimname}-${kqiname},今日${granularitys}${kqiname}为${kqivalue},昨日为${kqiyesvalue},7天前为${kqisevenvalue},7天均值为${kqisevenavgvalue},"+"日环比为${kqirhbvalue}%,环比昨日上涨/下降${kqirhbvarvalue},周同比为${kqiztbvalue}%,环比一周前上涨/下降${kqiztbvarvalue}",根据接收的目标数据中dimname、granularitys、kqivalue、kqiyesvalue、kqisevenvalue、kqisevenavgvalue、kqirhbvalue、kqirhbvarvalue、kqiztbvalue以及kqiztbvarvalue各自对应的数值就可以得到预警文本信息。步骤s62:基于生成图标的类库将历史预警信息生成预警网页。步骤s63:将预警网页进行保存并生成推送链接。在步骤s61-63中,作为一种实施方式,可以将网页存入oss(operationsupportsystem,运营支撑系统)。生成图标的类库可以为percharts。步骤s64:基于指定推送方式将预警文本信息以及推送链接进行推送。在步骤s61-64中,可以理解的是,当预警信息为真时,表明满足预警条件,需要进行预警推送,推送的内容包括目标预警规则、预警推送时间以及目标预警业务对应的目标预警指标在指定粒度下的数据,例如在不同于步骤s61中所描述的其他文本模板中,预警文本信息可以为:“预警规则:全机构反欺诈注册成功当天累积量>0;预警推送时间:2020-12-1017:30:01;今日当天累积量反欺诈成功为0,昨日为7918,7天前为7109”。可以理解的是,图文推送的方式可以为任意可以推送网页的工具,例如包括钉钉、qq或者邮件等推送方式,可以根据实际需要进行选择。指定推送方式为上述推送中的任意一种。请参看图6,图6为本申请实施例提供的一种预警信息推送装置示意图。预警信息推送装置70包括:视图配置模块701,用于基于预警业务的不同类别建立的各个类目录树进行指标视图配置得到各个类目录树图,每个类目录树包括不同维度的预警业务指标。事件配置模块702,用于通过拖拽组件为类目录树图上的各个预警业务指标设置第一拖拽事件、通过拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,其中,拖拽排序事件用于设定第一拖拽事件、第二拖拽事件以及第一拖拽进入事件的执行顺序。规则配置模块703,用于基于与各个预警业务对应的预警业务指标、与各个预警业务对应的所述运算符、第一拖拽事件、第二拖拽事件、第一拖拽进入事件以及拖拽排序事件生成对应的预警规则,运算符包括算数运算符、逻辑运算符以及关系运算符中的至少一种。定时配置模块704,用于对各个预警规则进行定时设置。计算模块705,用于基于定时设置以及目标预警规则触发预警计算得到当前预警信息,目标预警规则为预警规则中的任意一个。推送模块706,用于将当前预警信息与历史预警信息进行图文推送。可选地,视图配置模块701用于:针对每个类目录树,对类目录树进行结构预处理得到结构预处理指标数据,结构预处理数据包括类目录树中的每个节点的构造展示文本、每个节点的节点宽度值以及每个节点的添加层信息;将各个类目录树的结构预处理指标数据以及各个类目录树的贝塞尔曲线与页面视图容器连接,得到各个类目录树对应的连接后类目录树图;针对每个连接后类目录树图,基于连接后类目录树图计算连接后类目录树图中的每一层节点之间的节点距离以及每一层节点之间的节点距离与所述每一层节点的节点宽度值的宽度比值;基于节点距离、宽度比值以及每个节点的构造展示文本的内容长度,设置每个节点的展开尺寸以及收缩尺寸;基于连接后类目录树图、展开尺寸以及收缩尺寸生成类目录树图。可选地,事件配置模块702用于:将各个预警业务指标、各个运算符以及预警规则分布在不同的区域;在各个预警业务指标所在的区域中通过draggable组件将各个预警业务指标与第一拖拽事件绑定;在各个运算符所在的区域中通过draggable组件将各个运算符与第二拖拽事件绑定;在预警规则容器所在的区域中通过draggable组件将预警规则容器与第一拖拽进入事件和拖拽排序事件。可选地,定时配置模块704用于:通过cron表达式设置定时页面,以对各个预警业务的预警计算进行定时设置。可选地,计算模块705用于:对各个类目录树进行接口配置得到各个类目录树的数据接口;基于目标预警业务匹配对应的目标预警规则的识别码;将识别码存入预警执行队列;对预警执行队列中的识别码进行解析,得到参与预警计算的目标预警业务指标;基于目标预警业务对应的类目录树的数据接口读入目标预警业务指标的目标数据;通过boolformulas接口将目标数据传入目标预警规则计算得到当前预警信息。可选地,推送模块706用于:基于目标预警业务对应的类目录树的目标理数据以及预警信息生成预警文本信息;基于生成图标的类库将历史预警信息生成预警网页;将预警网页进行保存并生成推送链接;基于指定推送方式将预警文本信息以及推送链接进行推送。本实施例还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器运行所述程序指令时,执行上述任意方法中的步骤。本实施例还提供了一种存储介质,所述存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器运行时,执行上述任意方法中的步骤。综上所述,本申请的实施例提供了一种预警信息推送方法、装置、电子设备及存储介质,涉及数据处理
技术领域
:,所述预警信息推送方法包括:基于预警业务的不同类别建立的各个类目录树进行指标视图配置得到各个类目录树图,每个类目录树包括不同维度的预警业务指标;通过拖拽组件为类目录树图上的各个所述预警业务指标设置第一拖拽事件、通过拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,其中,拖拽排序事件用于设定第一拖拽事件、第二拖拽事件以及第一拖拽进入事件的执行顺序。基于与各个所述预警业务对应的所述预警业务指标、与各个所述预警业务对应的所述目标运算符、所述第一拖拽事件、所述第二拖拽事件、所述第一拖拽进入事件以及所述拖拽排序事件生成预警规则,所述运算符包括算数运算符、逻辑运算符以及关系运算符;对各个所述预警规则进行定时设置。基于所述定时设置以及目标预警规则触发预警计算得到当前预警信息,所述目标预警规则为所述预警规则中的任意一个。基于所述指标视图配置将所述当前预警信息与历史预警信息进行图文推送。在上述实现过程中,在上述实现过程中,通过将各个所述预警业务指标设置第一拖拽事件、通过拖拽组件为运算符设置第二拖拽事件、以及通过拖拽组件为预警规则容器设置第一拖拽进入事件和拖拽排序事件,针对不同的所述预警业务能够拖拽不同的所述预警业务指标、不同的运算符、不同的第一拖拽事件以及不同的拖拽排序事件生成与所述预警业务适应的所述预警规则,基于不同的所述预警业务对应的不同的所述预警规则进行定时设置后进行预警计算得到与目标预警业务对应的当前预警信息,以适应不同预警业务场景下的预警信息推送,提高预警信息推送的适用性。在本申请所提供的几个实施例中,应该理解到,所揭露的设备,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的框图显示了根据本申请的多个实施例的设备的可能实现的体系架构、功能和操作。在这点上,框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图中的每个方框、以及框图的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。因此本实施例还提供了一种可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行区块数据存储方法中任一项所述方法中的步骤。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1