美文网首页
随笔 sap 应用日志

随笔 sap 应用日志

作者: abapCiCi | 来源:发表于2020-07-21 10:39 被阅读0次

    相关介绍

    SAP 应用日志(Application Log)是用于创建、保存和分析系统消息的工具。应用程序事件可以集中记录在应用程序日志中。
    应用程序日志提供了一个基础结构(应用程序日志是由多个表组成的表结构),用于收集日志中的消息和异常,保存,读取和删除数据库中的日志并显示它们。
    应用程序日志记录了应用程序执行的进度。系统日志记录系统事件,我们可以使用应用程序日志记录特定于应用程序的事件,其优点是系统范围的标准化和统一的事件日志记录,便于分析。
    应用程序日志旨在临时存储消息。应该间隔删除日志(例如每周批量删除日志)以避免数据库负载过高。


    t-code

    SLG0    创建一个新的日志对象和子对象
    SLG1    显示应用程序日志
    SLG2    删除应用程序日志
    

    函数

    BAL_LOG_CREATE      创建日志
    BAL_LOG_MSG_ADD     将消息添加入日志
    BAL_DB_SAVE         保存消息
    BAL_DSP_LOG_DISPLAY 显示内存中的消息
    

    Open Log

    函数BAL_LOG_CREATE被用于打开程序的日志,这个函数会返回一个日志句柄(Log Handle),这个日志句柄是特定日志的唯一标识,我们使用该句柄可以执行例如添加消息进入日志等操作。

    Add message to Log

    通过使用日志句柄,我们可以通过功能模块BAL_LOG_MSG_ADD的传入参数I_S_MSG(或者结构BAL_S_MSG)来添加消息到我们想要添加的LOG中。

    Save messages

    通过功能模块BAL_DB_SAVE的传入参数I_SAVE_ALL = ‘X’将存放在内存中日志保存到数据库。BAL_DB_SAVE会返回一个表(传出参数为E_NEW_LOGNUMBERS),表中涉及到了
    LOG_HANDLE,外部号码EXTNUMBER,临时LOGNUMBER和永久LOGNUMBER,因此在保存以后我们可以找到哪个号码被分配给了LOG日志。

    Display messages

    通过功能模块BAL_DSP_LOG_DISPLAY我们可以显示收集的信息。

    应用场景

    我们可以将应用程序日志使用在如下情景中:

    1. 当我们想要将列表/日志保存较长的时间;通常来说,我们有8天的假脱机时间,因此,这些列表/日志会被自动删除。
    2. 当我们需要与日志生成的日志相比更多的信息时;应用程序日志拥有更多的信息例如用户、生成日期、消息的严重程度。
    3. 在ALE/EDI处理中,我们进行跨客户端处理(IDoc处理)时,我们可以生成应用程序日志来追踪生成的错误或消息。

    步骤

    1. 通过事务代码SLG0来生成对象和子对象。
    2. 在我们需要生成Log的程序中调用功能模块(BAL_LOG_CREATE 生成日志、BAL_LOG_MSG_ADD 添加消息到日志中、BAL_DB_SAVE 将日志保存到数据库中)。
    3. 显示Log日志,我们需要通过事务代码SLG1,给出对象名称、子对象名称和诸如用户名称、日期等其他关联数据的信息,双击其中一条日志可以看到详细的错误信息。
    4. 通过功能模块BAL_DSP_LOG_DISPLAY,我们可以在程序中查看程序本身的日志信息。

    示例程序

    SBAL_DEMO_02

    注意的地方

    1. 使用se61 来设置明细
    2. 长文本在se93 里面找到对应的号码 编辑他的长文本
    3. 所以都是使用message Ixxx into c witn 的方式来带入参数
    4. 可以添加扩充字段

    相关文章

      网友评论

          本文标题:随笔 sap 应用日志

          本文链接:https://www.haomeiwen.com/subject/tseekktx.html