上机日志

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

上机日志

一、 EAS日志服务功能说明

1、日志服务是EAS中用来记录用户操作历史,上机日志记录某个用户在什么时间从哪台机器对哪个数据做了什么操作,是否成功执行等信息。

2、日志服务提供两种形式的记录操作日志方式,一种是由框架自动写日志,另一种是由业务主动力控制写日志。两种方式都需要配置日志项元数据

二、 EAS日志服务使用说明

 框架自动记录日志

框架自动记录日志开发步骤:

1、定义日志项元数据

BOS IDE中日项志元数据的配置界面

日志项信息说明

名称:日志项的名称。在手工写日志时根据这个名称来获取“操作”和“日志类型”信息。

别名:作为查询日志时的“操作”属性。

类型:作为查询日志时的“日志类型”属性,取值范围:用户登录、用户操作、系统事件、工作流。

新发布的日志项元数据,需要执行“同步日志项数据”操作,新生成的日志才会有“操作”属性和“日志类型”属性。因为日志中的“操作”属性和“日志类型”属性是从数据库中的日志项表中获取的,新增加的日志项元数据,执行同步日志项数据操作后会在日志项表中增加相应的记录。

级别:指定日志的级别,分高、中、低三级,当日志项的级别不低于系统配置的日志级别时才会写日志。

引用对象:要求记录日志的对象,可以是实体对象或功能对象。

引用对象方法:指定要求记录日志的对象方法,当调用引用对象方法时,会调用日志服务记录日志。

调用模式:指的是日志项绑定的方法在执行时,日志服务记日志的时机。

BEFORE:在方法执行前记日志;

AFTER: 在方法执行后记日志;

BOTH: 在方法执行前后都记日志,即记两次日志。


      对于需要记录日志的业务方法,现在日志服务中都会记录两次日志,在调用业务逻辑方法前后分别各记录一次日志。在调用业务逻辑方法前记录的日志的“执行结果”为“失败”。如果在调用业务逻辑方法后,第二次调用日志服务前没有发生异常,则日志服务会把“执行结果”修改为“成功”。

     操作对象参数序号:若指定的操作对象参数序号大于零,则会将对应序号的参数取字符串作为日志中的“操作对象”属性。

2、  同步日志项数据

用administrator用户登录,打开“应用中心 -企业建模 – 安全管理 –系统监控-上机日志”

在“文件”菜单中执行“同步日志项数据”

3、框架根据日志项配置自动记录日志


三、  业务模块主动记录日志

      有些情况,框架提供的日志服务不能够满足业务模块需要,如对于功能对象不能够获取到操作对象。这时可能调用日志工具类的记录日志方法来实现。业务模块主动记录日志可以选择定义日志项元数据或者不定义。如果想在日志查询中显示明确的“操作”信息,则需要定义日志项元数据。否则在日志查询中“操作”信息只显示“客户端操作”,“日志类型”显示“用户操作”。

 

业务模块主动记录日志开发步骤:

1.  定义日志项元数据

业务模块主动记录日志也要定义日志项元数据,主要目的是为了查询日志时获取“操作”属性和“日志类型”属性。与定义框架自动记录日志的日志项元数据不同的是在定义业务模块主动记录日志的日志项时不指定“引用对象”和“引用对象方法”。如果指定了“引用对象”和“引用对象方法”,则系统会认为这是一个框架自动记录日志的日志项。

 

2.  同步日志项数据

与框架自动记录日志一样,定义日志项元数据后也需要执行同步日志项数据操作。

 

3.  在业务模块中主动记录日志

在业务模块中需要记录日志的地方调用日志工具类方法进行日志记录。在执行业务逻辑前后分别各调用一次。在执行业务逻辑之前调用com.kingdee.eas.base.log.LogUtil的

public static IObjectPK beginLog(Context ctx, String methodName, BOSObjectType bizObjType, IObjectPK instancePK, String instanceDeatil, String logItemName)

方法记录一次日志。

方法参数说明,

ctx 如果为空为远程调用,否则为本地调用

methodName 方法名称

bizObjType 业务对象BOSType

instancePK 操作对象实例PK。对于批操作对象,该参数可以为空。

instanceDeatil 操作对象实例详细信息。对于批操作对象,请将所有对象详细信息拼为字符串。

logItemName 日志项名称,与日志项元数据名称一致。

返回值:IObjectPK 日志记录PK。在执行业务逻辑后根据这个标识修改日志的“执行结果”属性。

 

如果没有定义日志项元数据,则调用com.kingdee.eas.base.log.LogUtil的

public static IObjectPK beginLog(Context ctx, String methodName, BOSObjectType bizObjType, IObjectPK instancePK, String instanceDetail)

方法参数说明,

ctx 如果为空为远程调用,否则为本地调用

methodName 方法名称

bizObjType 业务对象BOSType

instancePK 操作对象实例PK。对于批操作对象,该参数可以为空。

instanceDetail 操作对象实例详细信息。对于批操作对象,请将所有对象详细信息拼为字符串。

返回值:IObjectPK 日志记录PK。在执行业务逻辑后根据这个标识修改日志的“执行结果”属性。

 

在执行业务逻辑后,如果执行成功,则调用com.kingdee.eas.base.log.LogUtil的

public static void afterLog(Context ctx, IObjectPK logPK) 修改日志的“执行结果”属性为“成功”。方法参数说明,

ctx 如果为空为远程调用,否则为本地调用。

logPK 日志记录PK,在执行业务逻辑之前调用com.kingdee.eas.base.log.LogUtil的beginLog()的返回值。


上机日志

一、 EAS日志服务功能说明1、日志服务是EAS中用来记录用户操作历史,上机日志记录某个用户在什么时间从哪台机器对哪个数据做了什么操作,...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息