关于“调用总公司规则集异常”问题追踪过程说明
1.背景说明
日常工作中,车险业务相关ilog规则通常由车险部编写、验证测试及正式发布,或由车险部组织相关分公司进行此类工作。
信科部近期未对ilog系统生产环境进行任何发布投产动作。
2.问题产生过程
10月9日,车险部向生产环境进行了数次规则发布,但在发布前未对全部规则进行测试;
10月9日下午14:24:17,车险部发布了一个规则库版本后,生产环境出现了问题。
10月9日约14:50,车险部杨琳琳联系信科部刘思华,反映问题情况:应自核的投保单,未能自核通过,转人工核保,系统提示:调用总公司规则集异常。信科部运维及ilog项目组开发人员,进行问题排查。
10月10日上午8:30,ilog项目组定位到问题所在规则及bom字段,且在验证环境上没有发现该条规则。9点查出问题发生的根本原因。
10月10日上午约9点,车险部将9号发布的规则回滚。业务恢复正常。
3.规则发布情况
以10月1日后变动的规则条目为依据,对10月9日至10月10日总公司规则转人工规则库“ForceHeadUndwrtRule_05”在核保生产环境RES中版本发布情况作如下说明。
3.1.规则条目变动情况
总公司规则转人工规则库“ForceHeadUndwrtRule_05”下,在2016-10-01 00:57:31至2016-10-10 13:57:31之间发生过变动的规则共有5条,如下:
3.2.规则库发布情况
在核保规则生产环境RES(http://21.8.143.42:7021/res)查看总公司规则转人工规则库“ForceHeadUndwrtRule_05”发布情况如下:
3.3.规则库发布版本说明
²107.0版本发布日期为10月8日18:51:20,变动的规则是“1、规则条目变动情况”中的“0004-权限-三者保额超总公司权限”。
²108.0-110.0版本未查到关于“1、规则条目变动情况”中的任何一条规则。
²111.0版本发布日期为10月9日14:24:17,变动的规则是“1、规则条目变动情况”中的“0001-权限-无牌、异地货车,总公司核保”、“0009-权限-10吨及以上自卸车,总公司核保(代理不为空)”,也是导致本次ILOG报错的版本。
²112.0、113.0版本中未查到关于“1、规则条目变动情况”中的任何一条规则。
²114.0版本发布日期为10月10日8:31:38,变动的规则是“1、规则条目变动情况”中的0006-权限-手续费率超分公司权限
²115.00版本中未查到关于“1、规则条目变动情况”中的任何一条规则
²116.0版本发布日期为10月10日9:04:47,变动的规则是将111.0版本中变动的规则“0001-权限-无牌、异地货车,总公司核保”回滚
²117.0版本发布日期为10月10日9:09:42,变动的规则是将111.0版本中变动的规则“0009-权限-10吨及以上自卸车,总公司核保(代理不为空)”回滚
4.问题原因分析
报错位置是“ForceHeadUndwrtRule_05”规则库中“投保单/单车/通用规则/通用规则包”下规则“0001-权限-无牌、异地货车,总公司核保”。
问题的原因:
1、该条规则中在定义“投保人”时,使用了BOM中保单关系人(prptinsured)里的“关系人代码(insuredCode)”字段去校验本应属于“关系人标志(insuredflag)”的内容。
2、“关系人代码(insuredCode)”字段在保单关系人(prptinsured)集合中“关系人代码(insuredCode)”为“车主”的信息中没有值,双核系统未将没有值的“关系人代码(insuredCode)”字段传给ilog系统,导致规则执行时找不到该字段,报错:“调用总公司规则集异常”。
将规则中“关系人代码(insuredCode)”修改为“关系人标志(insuredflag)”后规则可以正常执行。
5.改进建议
5.1.业务方面:
²向生产环境发布规则一定要按照正规流程进行,即编辑规则后,需要先发布到验证环境,进行验证测试,测试通过后方可发到生产环境。
²由于信科经办人员对于系统问题对分公司的影响缺少概念,如车险部领导认为影响较大,建议与信科部部门领导直接沟通,便于问题更加快速的解决。
5.2.信科方面:
²Ilog规则系统对IBM目前默认的报错机制进行优化,将后台存储的相关报错信息截取转化,在发生类似问题时,在前台提示有问题的规则库和规则名称,便于业务人员快速定位问题。
²维持验证环境的稳定性,如有升级操作需告知车险部,便于业务人员及时验证规则。