在SAP Gateway Service中记录警告/信息消息

2020-09-07 22:27发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)对于在SAP Gateway服务...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


对于在SAP Gateway服务呼叫期间可能发生的某些奇怪情况,我们需要记录警告/信息消息。 这些不是错误,不应在服务中引起异常,但是当满足某些条件时,我们的用户仍然希望在某处看到日志消息。 (恕我直言,这完全是妄想症,但这是另外一个故事。)

SAP帮助使其看起来像/IWBEP/CL_COS_LOGGER可以用于这种目的(毕竟,它的名称中带有" logger" :)),但是它没有提供任何ABAP代码示例,老实说我对此并不了解。 我可以在Google中找到关于此主题的一个一个SCN问题

这是我到目前为止根据该帖子所做的。 在网关生成的类(Z ... DPC_EXT一个)中,我使用如下代码获取记录器实例(?),并仅添加一条简单消息:

数据:/IWBEP/CL_COS_LOGGER.logger = mo_context-> get_logger()的记录器类型。  logger-> log_message(
  iv_msg_type ='E'
  iv_msg_text ='测试'
  iv_agent ='LOGGER'
  )。

这里的问题是(1)我被迫使用类型'E',因为在log_message方法中log_level变量以某种方式设置为'E',因此任何W或I消息类型都将被忽略。 问题(2)是消息在网关应用程序日志事务中的显示方式:与实际消息相比有些混乱,后跟" 6度分离":

我们的用户绝不可能喜欢它(我同意)。 问题:我在这里可以做些不同的事情来获得开销较小的日志消息,理想情况下是I还是W类型? 还是我们不得不求助于创建自定义应用程序日志?

谢谢。

P.S。 我们使用的是ECC EHP6,ABAP 7.31和较旧的Gateway版本(2?)。

scn.jpg (67.7 kB)
6条回答
黑丝骑士
2020-09-07 23:03

项目在我参与创建自定义应用程序的过程中,我们几乎在SLG1中记录了消息。 这是报告常规消息传递的最标准方法,并且可以通过以下功能模块轻松实现。

BAL_LOG_CREATE

BAL_LOG_MSG_ADD

BAL_DB_SAVE

我建议创建一个整体对象,然后每个应用程序都可以是一个子对象。 查看其他选项,我确实认为这是最好的选择,特别是因为它不是使用Z表定制的,而是提供了网关错误日志以外的其他要求。

一周热门 更多>