I love VSCode, but some handy features of IRIS Studio are indeed missing. I keep an instance of the latest InterSystems Studio in a VM to use when things which are missing, but after that I quickly switch back to VSCode and import the code. I really like the integration with Git & Docker.

I have a customer who uses a cloud based storage for all error/warning messages which happen in Ensemble. I don't remember the name of the service, but it is accessible through a REST service. They have written a simple REST client (Ensemble Business Operation) which uses PUT/POST to send the messages/warnings they capture. The API description should help you connect to such a system. You can use the alerting framework (ens.alert) to capture and forward it to your BO which connects to Tivoli or other system. SNMP might also be an option.

With this you can override the global setting. It is useful to have a maximum to protect you from having a "runaway" process to eat all your memory. If you need more in a process (for example I needed to instantiate a very large XML file as an object), you could overide the global setting (in my case 4GByte). But since only one specific process needs it, it is better to set it dynamically in that process. As Eduard said, it is only a maximum, it is not claimed when the process starts but only when needed.

The credentials do not have space to store a Domain field. Maybe add the domain as an extra setting?

Property Domain As %String ;

Parameter SETTINGS = "Domain";

Then you can use ..Domain in your Business Operation. You might also need to subclass the adapter to get it working with the Domain.


I just remember someting else since this is Ensemble; it depends on whether or not you are using an Enterprise license or a C-license (Cache with Ensemble add-on). I'm not entirely sure but I think the E-licenses are unlimited with regards to SOAP.


Hi Steve,

I have tested with this in the past, when 2011.1 was released and the 10 seconds delay was introduced for anonymous soap calls. With SOAPSESSION=1 the calls utilize the same session on the back-end. Multiple subsequent calls will only use 1 license, and the license will be held until the normal time-out expires. I could easily see this behaviour in the license statistics.

I'm not sure what happens when you do multiple calls in parallel, will they be queued?