Question
· 4 hr ago

Get RetryCount from BusinessOperation for monitoring purposes

Hello everyone. I'm currently working on how to implement a solution that makes it possible to include within the response of a BusinessOperation the "RetryCount" for each message.
For Example, we have this message that was retried twice:



This is an HL7.message going through a specific business operation, we did not create a custom one: we used the default implementation EnsLib.HL7.Operation.TCPOperation. This operation should automatically handle retries (infinetely waiting on a response). I found out each Business Operation has this property :

Can we retrieve this information AFTER the message has been handled? Is there any way to get this counter after the business operation is done working on a specific message?

I'm thinking we may need to create a custom business operation extending the default one EnsLib.HL7.Operation.TCPOperation, and we would need to wrap up the RetryCount inside the response. What do you think?

Product version: IRIS 2023.1
$ZV: IRIS for UNIX (Red Hat Enterprise Linux 9 for x86-64) 2023.1.3 (Build 517U)
Discussion (1)1
Log in or sign up to continue

I'm thinking we may need to create a custom business operation extending the default one EnsLib.HL7.Operation.TCPOperation, and we would need to wrap up the RetryCount inside the response. What do you think?

I think you are correct. RetryCount is a runtime property, I don't think it's stored anywhere longterm, so you need a custom BO to save it. There are some workarounds you can attempt:

  • Query event log
  • Get current retry count using:  $$$GetJobMonitor(tConfigName,$$$SystemName_":"_$Job,$$$eMonitorRetry)

But I would definitely recommend subclassing.