s-HR Cloud日志配置说明原创
7次浏览
编辑于2024年08月14日 16:35:35
![summary-icon](https://cdn-vip.kingdee.com/statics/webfront/summary_icon.png)
本文介绍了在二次开发中进行上机日志配置记录的方法,包括系统用户登录路径、日志基本信息配置的两个关键级别(简单级别和明细级别)、日志实现类扩展的配置,以及针对特殊场景的日志配置说明,如按钮请求方法不明确、按钮名称与实际请求不一致、记录关键数据与预期不符等情况。还详细说明了日志记录参数的配置格式,包括从请求获取多个参数或对象数据记录关键数据集的json格式示例。
二开需要进行上机日志配置记录
使用系统用户登录
路径:开发平台->基础配置->日志配置
日志基本信息配置,主要涉及两个关键配置
1、日志级别扩展
1.1、简单级别,主要是不记录带分录的数据的模型的分录数据,如:入职单入职,只会记录一条上机日志
1.2、明细级别,记录带分录的数据,每一条分录都会记录一条日志,如:多人入职单入职,分录里面有三条数据,那么记录到上机日志里面就是4条上机日志(1条入职单头数据,3条分录数据)
2、日志实现类扩展
可以配置默认实现类,com.kingdee.shr.base.syssetting.log.DefaultOperateLogService
二开要通过代码实现上机日志,可以通过配置和实现日志实现类来完成,web端的日志实现类通过继承com.kingdee.shr.base.syssetting.log.AbstractOperateLogService此日志抽象实现类来实现
分录需要配置的场景如下:
1、视图上没明确配置按钮的请求方法,这些请求是通过js直接发起 2、视图上配置了按钮,但是对应前端js方法被重写了,实际请求和按钮名称不一样 3、上机日志记录的关键数据和预期不符,系统上机日志默认规则,记录参数:保存请求中参数model中的(number,name,id),请求参数number,name,id,billId,如果找不到这些参数,则不记录关键数据
日志url 配置格式:<method>#<uipk> 说明:其中<method>表示ajax请求方法,<uipk>为视图uipk,例子:save#com.kingdee.shr.base.syssetting.app.WorkPlatform.list 注意,这里的<method>一定是往后端发起请求的方法
按钮名称 配置格式:视图上配置按钮<button name="save" caption="保存">,此时配置为“save” 说明:视图按钮名称和请求服务名称不一致时候需要配置,如:视图上配置按钮<button name="save" caption="保存">,但前端js将saveAction给重写了,实际发送请求为saveConfigFile
记录参数 配置格式:json格式 说明:主要两种json格式 1、直接从请求获取多个参数记录关键数据集 请求中需要传入参数:billId,number 参数类型是字符串 [ { "logParam": "billId", "alais_l1": "ID", "alais_l2": "单据ID", "alais_l3": "单据ID" }, { "logParam": "number", "alais_l1": "Number", "alais_l2": "单据编码", "alais_l3": "单据编码" } ] 2、直接从请求获取对象数据记录关键数据集 请求中需要传入参数:models 参数类型是json串,如:{"billId":"xxx","number":"xxxx",...}或者[{"billId":"xxx","number":"xxxx",...},....] { "i18nMethod": { "package": "com\\kingdee\\shr\\shrwebjs", "file": "shr.shrFileTemplate.list", "key": "dev_importTemplateSettingList_26912505_i18n_3" }, "dataName": "models", "recordInfo": [ { "logParam": "billId", "alais_l1": "ID", "alais_l2": "单据ID", "alais_l3": "单据ID" }, { "logParam": "number", "alais_l1": "Number", "alais_l2": "单据编码", "alais_l3": "单据编码" } ] }
下面截图是配置的实例:
推荐阅读