跳到内容
技术文章
作者的个人资料照片Bhalchandra Wadekar

EIPinCPI—消息存储

以前-消息历史记录|指数|下一步-智能代理

本周,我将探讨一种系统管理模式,称为消息存储

什么时候使用这个模式?

消息存储用于持久化消息或部分消息,以用于报告和分析目的。消息可以使用线龙头或者使用专用的步骤。

CPI中的消息存储

存储的信息

在CPI中,可以使用message Store来存储消息坚持步骤如下:

坚持

坚持

该流使用计时器事件开始,然后内容修改器step设置消息的Header、Property和正文。最后,坚持步骤将将消息持久化到消息存储中。

访问的消息

可以使用CPI的OData API访问持久化消息。

获取消息ID

首先,让我们运行流。部署流时,我们可以在监视中查看Message ID。

部署

部署

使用Message ID获取消息存储条目

现在,我可以通过在URL上运行HTTP GET来使用Message ID获取消息存储条目:

https:// <租户> / api / v1 / MessageProcessingLogs(“<消息ID >”)/ MessageStoreEntries

示例输出如下所示。在这里,我们可以看到来自流的Persist步骤的条目。

<饲料xmlns = " http://www.w3.org/2005/Atom " xmlns: m = " http://schemas.microsoft.com/ado/2007/08/dataservices/metadata " xmlns: d = " http://schemas.microsoft.com/ado/2007/08/dataservices " xml:基础= " https:// <租户>:443 / api / v1 / " > < id > https:// <租户>:443 / api / v1 / MessageStoreEntries < / id > <标题类型=“文本”> MessageStoreEntries < /名称>< >更新2021 - 01 - 31 - t15:27:57.116z更新< / > < >作者< /名称> < /作者> <链接href = " MessageStoreEntries rel = "自我"标题= " MessageStoreEntries " / > <条目> < id > https:// <租户>:443 / api / v1 / MessageStoreEntries(“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b”)< / id > <标题类型=“文本”> MessageStoreEntries < /名称>< >更新2021 - 01 - 31 - t15:27:57.116z < /更新> <类别词= " com.sap.hci.api。MessageStoreEntry”计划= " http://schemas.microsoft.com/ado/2007/08/dataservices/scheme " / > <链接的href = " MessageStoreEntries(“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b”)“rel = "编辑"标题= " MessageStoreEntry " / > <链接的href = " MessageStoreEntries(“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b”)/美元价值”rel = "编辑媒体" type = "应用程序/八进制" / > <链接的href = " MessageStoreEntries(“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b”)/附件”rel = " http://schemas.microsoft.com/ado/2007/08/dataservices/related/Attachments " title =“附件”类型=“application / atom + xml; type =饲料" / > <链接href="MessageStoreEntries('sap-it-res%3Amsg%3Aa237a07a6%3Ad8402-e38e-4d13-9567-998eb2af638b')/Properties" rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Properties" title="Properties" type="application/atom+xml;type=feed"/> https:// <租户> / api / v1 / MessageProcessingLogs(“<消息ID >”)/ MessageStoreEntries(“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b”)/美元价值

示例输出可以是:

<身体/ >

获取消息的头

标题可以在/Properties路径中找到

https:// <租户> / api / v1 / MessageProcessingLogs(“<消息ID >”)/ MessageStoreEntries(“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b”)/属性

示例输出如下所示。在这里,我们可以看到标准头信息,如SAP_MplCorrelationId、SAP_PreGeneratedMplId和SAP_MessageProcessingLogID。自定义标题“header”也在这里列出。

<饲料xmlns = " http://www.w3.org/2005/Atom " xmlns: m = " http://schemas.microsoft.com/ado/2007/08/dataservices/metadata " xmlns: d = " http://schemas.microsoft.com/ado/2007/08/dataservices " xml:基础= " https:// <租户>:443 / api / v1 / " > < id > https:// <租户>:443 / api / v1 / MessageStoreEntryProperties < / id > <标题类型=“文本”> MessageStoreEntryProperties < /名称>< >更新2021 - 01 - 31 - t15:36:33.128z更新< / > < >作者< /名称> < /作者> <链接href = " MessageStoreEntryProperties rel = "自我"标题= " MessageStoreEntryProperties " / > <条目> < id > https:// <租户>:443 / api / v1 / MessageStoreEntryProperties(消息id =“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b’,name = ' SAP_MplCorrelationId ') < / id > <标题type="text">MessageStoreEntryProperties
  20121-01-31t15: 36:33.128z   <链接的href = " MessageStoreEntryProperties(消息id =“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b’,Name = ' SAP_MplCorrelationId ')”rel = "编辑"标题= " MessageStoreEntryProperty " / > <内容类型=“application / xml”> < m:属性>sap-it-res:msg:a237a07a6:d8402-e38e-4d13-9567-998eb2af638b SAP_MplCorrelationId AGAWw8whkIvH4abnnWdrJ8C12kO_    https://:443/api/v1/MessageStoreEntryProperties(MessageId='sap-it-res%3Amsg%3Aa237a07a6% 3ad8402 -e38e-4d13- 9667 -998eb2af638b',Name='Header') MessageStoreEntryProperties
  20121-01 - 31t15:36:33.129 z   <链接的href = " MessageStoreEntryProperties(消息id =“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b’,Name = '标题')”rel = "编辑"标题= " MessageStoreEntryProperty " / > <内容类型=“application / xml”> < m:属性>< d:消息id > sap-it-res:味精:a237a07a6: d8402 e38e - 4 d13 - 9567 - 998 - eb2af638b < / d:消息id > < d:名称>头< / d:名称> < d:值> < / d:价值> < / m:属性> < /内容> < / entry > <条目> < id > https:// <租户>:443 / api / v1 / MessageStoreEntryProperties(消息id =“sap-it-res % 3 amsg % 3 aa237a07a6 % 3 ad8402 e38e - 4 d13 - 9567 - 998 - eb2af638b’,Name = ' SAP_PregeneratedMplId ') < / id >MessageStoreEntryProperties
 2021-01-31T15:36:33.129Z     sap-it-res:msg:a237a07a6:d8402-e38e-4d13-9567-998eb2af638b SAP_PregeneratedMplId AGAWw8xzG5YwLr1SYPHGi9qi_IR8     https://:443/api/v1/MessageStoreEntryProperties(MessageId='sap-it-res%3Amsg%3Aa237a07a6%3Ad8402-e38e-4d13-9567-998eb2af638b',Name='SAP_MessageProcessingLogID') MessageStoreEntryProperties
 2021-01-31T15:36:33.129Z     sap-it-res:msg:a237a07a6:d8402-e38e-4d13-9567-998eb2af638b SAP_MessageProcessingLogID AGAWw8xxrAL7yJjy8kCGivUFXGQH    

请注意这里的path /Properties并不意味着Exchange Properties, path /Properties存储消息的头信息。

如果发送方、接收方、消息类型、应用程序id的其他标准标头在持久化之前被填充,那么,使用UI5将很容易基于这些因素构建报告。例如,找出由给定消息类型的给定发送者发送的消息数量。

EIPinCPI评分- 10/10

CPI有专门的步骤和OData API来访问消息存储。因此,我们给出了满分10分的完整评分。

结论

消息存储用于存储用于报告或分析目的的消息。

引用/进一步阅读

希望这有助于
巴拉

以前-消息历史记录|指数|下一步-智能代理

指定的标签

      第一个留言
      你必须登录评论或回复一篇文章
      Baidu