查询活动/住院corda流的状态
我有一个流查询活动/住院corda流的状态,corda,Corda,我有一个流MyFlow,它通过RPC使用一些特定的args调用,创建一个tx,将一些args置于输出状态,然后调用子流(FinalityFlow(…))。我觉得很标准。RPC客户端可以同时调用一组这些流。 现在,如果公证人或接收节点关闭,MyFlow可能会暂停并重试 我现在要做的是向用户/节点操作员查询/报告关于哪些事务当前处于“挂起”状态(即正在重试)的信息。理想情况下,我希望提取未完成的MyFlow实例的txid和args。我似乎不能使用ProgressTracker,因为它的步骤需要预先定
MyFlow
,它通过RPC使用一些特定的args
调用,创建一个tx,将一些args
置于输出状态,然后调用子流(FinalityFlow(…)
)。我觉得很标准。RPC客户端可以同时调用一组这些流。
现在,如果公证人或接收节点关闭,MyFlow
可能会暂停并重试
我现在要做的是向用户/节点操作员查询/报告关于哪些事务当前处于“挂起”状态(即正在重试)的信息。理想情况下,我希望提取未完成的MyFlow
实例的txid和args
。我似乎不能使用ProgressTracker
,因为它的步骤需要预先定义(即在流构造函数中,我还不知道tx id),而且标签-字符串似乎不是结构化数据的好载体AuditService
看起来是一个很好的候选,因为它可以访问步骤extraAuditData
,但它似乎只有do nothingDummyAuditService
实现,并且我无法在不更改AbstractNode.kt
的情况下挂接自定义实现(或者我可以吗?)
您知道如何实现这一点吗?您可以使用流监视
从节点外壳获取活动流
检索有关节点上运行的流的信息需要检索内部信息。这不是一个开发者不破解corda就可以做到的事情
使用stateMachineRecordedTransactionMappingFeed
或stateMachinesFeed
可能会使某些功能正常工作,但您所能实现的功能将是有限的
关于运行流和住院流的进一步工具可能会在将来添加到Corda中