I'm planning on using asynchronous logging on the audit component of our current project. 

The OS documentation clearly says that the message queue is not persistent: "The message queue is non-persistent. This means that in case of a system failure, pending records and request events get lost."

https://success.outsystems.com/Documentation/10/Reference/OutSystems_APIs/AsynchronousLogging_API

This causes the audit function to be flawed by default.

Since this functionality uses MSMQ, and messages can be persistent (with the obvious performance hit), is there a way to change the default behavior? There is a property to set the recoverability of the message in case of a catastrophic failure like a system crash: https://msdn.microsoft.com/en-us/library/system.messaging.message.recoverable.aspx


One option would be to implement a custom Asynchronous Logging API, but we'd rather avoid that route for obvious reasons.


Thanks in advance,

Márcio Lima

Hi Márcio,

Why do you conclude MSMQ is used? I can't find that from the documentation.

Hi Kilian,


After analyzing the DLL's and experimenting with the service, we've concluded out that the platform is indeed using the MSMQ.