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

2020-09-07 22:27发布

         点击此处--->   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)

         点击此处--->   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条回答
追夢秋陽
1楼 · 2020-09-07 23:16.采纳回答

为此,我们在后端使用常规的SLG1登录。

黑丝骑士
2楼-- · 2020-09-07 23:03

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

BAL_LOG_CREATE

BAL_LOG_MSG_ADD

BAL_DB_SAVE

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

闻人可可
3楼-- · 2020-09-07 23:17

我想您想向您的用户显示消息的示例:

SAPUI5:错误消息过多 o针对MessageManager的oData消息批量

和文档:

< a hraf=" https://ui5.sap.com/#/api/sap.ui.model.odata.ODataMessageParser" target =" _ blank"> sap.ui.model.odata.ODataMessageParser

可能会有所帮助。

Baoming ROSE
4楼-- · 2020-09-07 23:05

感谢您的回复! 这不在UI5上下文中。 我们将消息容器用于异常消息,但这是另一回事。 在这种情况下,用户将不会与该服务进行交互,它将由某些第三方使用。 我们的用户只是想查看事实之后的日志,因为他们认为可能会出现一些奇怪的数据错误。 该服务只会跳过任何错误的数据(首先不应该存在),但他们仍然希望跳过某些事实,以便在日志中的某个位置进行注册。

Aaron 3364
5楼-- · 2020-09-07 23:00

我们也有类似的要求 我们所做的是更新" Entityset"字段之一中的错误消息,并在UI5中读取该数据并将错误消息显示给用户。

暮风yp
6楼-- · 2020-09-07 23:03

在这种情况下,如上面的Uwe所述,SLG1是一种解决方法:)

一周热门 更多>