1.一种告警持久化方法,其特征在于,包括:
接收告警;
确定接收到的告警的类型,并基于不同的类型将告警放入与类型对应的告警队列中;
将各告警队列中经过一个预设的休眠时间的告警转换为数据库可接收的数据格式;
将转换格式后的告警持久化到数据库中。
2.如权利要求1所述的方法,其特征在于,所述确定接收到的告警的类型,并基于不同的类型将告警放入与类型对应的告警队列中,具体包括:
确定接收到的告警的类型,并判断与接收到的告警的类型不同,且与接收到的告警的告警源以及告警原因相同的其他告警在与其他告警的类型对应的告警队列中是否存在;
若判断结果为否,则将接收到的告警放入与其类型对应的告警队列中;
若判断结果为是,则将被放入对应告警队列中的所述其他告警持久化到数据库中,并将接收到的告警放入与其类型对应的告警队列中。
3.如权利要求1所述的方法,其特征在于,所述数据库可接收的数据格式包括:结构化查询语言SQL格式;
所述将各告警队列中经过一个预设的休眠时间的告警转换为数据库可接收的数据格式,具体包括:
基于各告警队列的预设的休眠时间确定需要进行格式转换的告警;
将需要进行格式转换的告警转换为数据库可接受的SQL格式。
4.如权利要求1所述的方法,其特征在于,所述将转换格式后的告警持久化到数据库中,具体包括:
判断是否存在尚未持久化到数据库的以文件形式存储的告警;
若判断结果为是,判断存储文件形式的告警的告警文件的大小是否超过 阈值,若超过,则将告警文件中存储的告警清空,并将转换格式后的告警存入所述告警文件,并以SQL*PLUS方式批量持久化到数据库中;若不超过,则将转换格式后的告警按照时间的先后顺序并入所述以文件形式存储的告警文件,并将合并后的告警文件以SQL*PLUS方式批量持久化到数据库中;
若判断结果为否,则将转换格式后的告警以JDBC方式批量持久化到数据库中。
5.如权利要求1所述的方法,其特征在于,还包括:
在接收到告警之后,判断预设时间段内接收到的告警的数量是否大于阈值;
若判断结果为是,则确定接收到的告警的类型,并基于不同的类型将告警放入与类型对应的告警队列中;
若判断结果为否,则以单条持久化告警的方式持久化接收到的告警。
6.一种告警持久化设备,其特征在于,包括:
接收模块,用于接收告警;
分类模块,用于确定接收到的告警的类型,并基于不同的类型将告警放入与类型对应的告警队列中;
转换模块,用于将各告警队列中经过一个预设的休眠时间的告警转换为数据库可接收的数据格式;
持久化模块,用于将转换格式后的告警持久化到数据库中。
7.如权利要求6所述的设备,其特征在于,所述分类模块,具体用于:
确定接收到的告警的类型,并判断与接收到的告警的类型不同,且与接收到的告警的告警源以及告警原因相同的其他告警在与其他告警的类型对应的告警队列中是否存在;
若判断结果为否,则将接收到的告警放入与其类型对应的告警队列中;
若判断结果为是,则将被放入对应告警队列中的所述其他告警持久化到数据库中,并将接收到的告警放入与其类型对应的告警队列中。
8.如权利要求6所述的设备,其特征在于,所述数据库可接收的数据格式包括:结构化查询语言SQL格式;
所述转换模块,具体用于:
基于各告警队列的预设的休眠时间确定需要进行格式转换的告警;
将需要进行格式转换的告警转换为数据库可接受的SQL格式。
9.如权利要求6所述的设备,其特征在于,所述持久化模块,具体用于:
判断是否存在尚未持久化到数据库的以文件形式存储的告警;
若判断结果为是,判断存储文件形式的告警的告警文件的大小是否超过阈值,若超过,则将告警文件中存储的告警清空,并将转换格式后的告警存入所述告警文件,并以SQL*PLUS方式批量持久化到数据库中;若不超过,则将转换格式后的告警按照时间的先后顺序并入所述以文件形式存储的告警文件,并将合并后的告警文件以SQL*PLUS方式批量持久化到数据库中;
若判断结果为否,则将转换格式后的告警以JDBC方式批量持久化到数据库中。
10.如权利要求6所述的设备,其特征在于,还包括:
处理模块,用于在接收到告警之后,判断预设时间段内接收到的告警的数量是否大于阈值;
若判断结果为是,则确定接收到的告警的类型,并基于不同的类型将告警放入与类型对应的告警队列中;
若判断结果为否,则以单条持久化告警的方式持久化接收到的告警。