The process reporting history is available via the UI for 30 days, regardless of where the process runs.
Detailed execution logs (e.g. process log, document data) for executions that run on the Dell Boomi cloud will be available 14 days unless you explicitly set the purge sooner (note the process reporting summary is still available for 30 days). For executions that run on a local atom/molecule, the default purge is 30 days but can be configured more/less, but keep in mind the process reporting summary will still be 30 days which makes access to those detailed logs a little more difficult).
You can export the process reporting summary history through the ExecutionRecord platform API, and persist it in an external database/storage as you wish. Details on the API: Execution Record object
If you are saying process reporting history is available via the UI for 30 days, regardless of where the process runs then what is the purpose of allowing date range more than 30 days in process reporting filter option.
Hi Sunil Rangaswamy,
Good observation. I would say "no purpose", just looks like that date picker doesn't restrict the range based on current date.
I went through the API documentaion, I'm interested in querying with various search parameters,
I want to know the list of processes executed for a particular duration (say 1day),, with all status, (eg: COMPLETE, STARTED).
Our requirement, was to have a every day job to backup the Process reporting details and build an equivalent UI?
Is there a possible solution?
Hi Mallikarjun Ratala,
I think the Execution Record API (linked above) would be what you want. You can filter the query by date range and status, write the records to the data store of your choosing, and develop a custom UI on top of that data. Of course you can even create and schedule a Boomi process that calls the AtomSphere API and writes it to your data store.
After looking at that API, were there any other questions?
Hi, Can I know the process flow on how you have created the process for Job backup on a daily basis
Hi ananyaa V,
I don't have an example at the ready but the general idea would be:
Hi adam, When I am trying to query using API connector. 1. In the connection I unable to test the connection as it says HTTP:500 error. what is this error caused due to.
2. As there is a connection failure. When I try to import the Excecution Record Object from the import button in operation tab. I am getting the same error.
Can you please help.
I would double check your connection config and credentials, and also make sure your AtomSphere user has the API Access privilege assigned (or is an Admin).
Hi AdamAtomSphere user has ADMIN-BOOMI DEFAULT ADMINISTRATOR ROLE. But doesnot have API access.How to give him API privilege.
Well, the default admin role has API Access of course. There's probably some slight configuration or syntax error that would involve inspecting your connection details and look around your process configuration. At this point I would recommend contacting support to help out. I'll be curious to know what the issue is.
The previous error was due to connection error. As of now I am using a HTTP client connector. Can you help me with the process flow when using a HTTP client connector.The below fields reports are to be pulled from every scheduled process. 1. Job Name 2. Status(Success/Failure 3. Run Date 4. Time taken 5. Total Records 6. Last Run Status Message 7. Next Run Date Time
Apologies for the delayed reply--catching up after year end and holidays.
Out of curiosity why did you decide to use the HTTP connector instead of the AtomSphere API connector? There will be considerable more configuration involved to replicate the query preparation and response handling, paging, etc. performed automatically by the branded connector. I would strongly recommend using the AtomSphere API connector, especially if you're relatively new to Boomi.
The Execution Record object contains most of the fields you list. I'm not exactly sure what you mean by "Last Run Status Message"? "Next Run Date Time" would be very challenging to calculate: you would need to retrieve all the Process Schedules object for each process and parse the cron attributes, to determine the frequency, convert that to a date time calendar object, etc. That's not a request I've heard often and not sure it would be worth the effort to try to calculate yourself.
Thank your the information, just what I was looking for!
I read all of the information for the API that you linked to - nothing as far as documents.
Hi Ralph Movilla,
since the default purge is 30 days how can we configure this so the retention is more than 30 days for a local atom?
You can set the purge for a local atom to longer than 30 days which will keep the document data and execution results metadata available on your local atom, but it will not be visible/searchable via the Process Reporting UI.
However, we are looking to ways to extend this, at least for Trading Partner/EDI related documents, in the near future. Check out Process Reporting for more than 30 days
can you retrieve process execution document data using the AtomSphere API?
I'm trying to get the execution summary information of process ID: 7f7e537e-4337-4963-b9ca-21d53ae53223 and following RESTish implementation section of link Execution Recordobject , but getting error.
<QueryConfig xmlns="http://api.platform.boomi.com/"> <QueryFilter> <expression operator="EQUALS" property="processId" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="SimpleExpression"> <argument>7f7e537e-4337-4963-b9ca-21d53ae53223</argument> </expression> </QueryFilter></QueryConfig>
Response getting is:
<?xml version="1.0" encoding="UTF-8" standalone="no"?><error> <message>Must use POST for queries</message></error>
XXXXXX - is my account ID
Kindly let me know what is going wrong.
Hmm, I'm trying but unable to replicate that error doing the same call with Postman to my account.
Here's my raw (view Code in Postman) request:
POST /api/rest/v1/MYACCOUNT/ExecutionRecord/query HTTP/1.1Host: api.boomi.comAuthorization: Basic <removed>Content-Type: application/xmlCache-Control: no-cachePostman-Token: ad948862-83eb-9d53-1976-5cd0b2410760<QueryConfig xmlns="http://api.platform.boomi.com/"> <QueryFilter> <expression operator="EQUALS" property="processId" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="SimpleExpression"> <argument>7f7e537e-4337-4963-b9ca-21d53ae53223</argument> </expression></QueryFilter></QueryConfig>
POST /api/rest/v1/MYACCOUNT/ExecutionRecord/query HTTP/1.1Host: api.boomi.comAuthorization: Basic <removed>Content-Type: application/xmlCache-Control: no-cachePostman-Token: ad948862-83eb-9d53-1976-5cd0b2410760
<QueryConfig xmlns="http://api.platform.boomi.com/"> <QueryFilter> <expression operator="EQUALS" property="processId" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="SimpleExpression"> <argument>7f7e537e-4337-4963-b9ca-21d53ae53223</argument> </expression>
Might be something silly with Postman, maybe try recreating the call, reselect the HTTP verb, etc.
I think it is nothing to do with Postman because I'm able to recreate the same in Boomi as well.
Created simple process to make HTTP call as shown below.
com.boomi.connector.ConnectorException: Error message received from Http Server, Code 400: Bad Request at com.boomi.connector.http.BaseHttpAction.checkResponseCode(BaseHttpAction.java:673) at com.boomi.connector.http.HttpSend.handle(HttpSend.java:377) at com.boomi.connector.http.HttpSend.send(HttpSend.java:100) at com.boomi.connector.custom.CustomSendConnectorAction.invoke(CustomSendConnectorAction.java:60) at com.boomi.connector.base.BaseConnectorAction.invokeBase(BaseConnectorAction.java:364) at com.boomi.connector.base.BaseConnectorAction.invokeWithReadStore(BaseConnectorAction.java:303) at com.boomi.connector.base.BaseConnectorAction.invoke(BaseConnectorAction.java:275) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.boomi.util.ClassUtil$InvokerWithClassLoader.invoke(ClassUtil.java:369) at com.sun.proxy.$Proxy45.invoke(Unknown Source) at com.boomi.process.shape.ConnectorShapeHandler.execute(ConnectorShapeHandler.java:152) at com.boomi.process.shape.ConnectorShape.execute(ConnectorShape.java:144) at com.boomi.process.graph.ProcessShape.executeShape(ProcessShape.java:559) at com.boomi.process.graph.ProcessGraph.executeShape(ProcessGraph.java:489) at com.boomi.process.graph.ProcessGraph.executeNextShapes(ProcessGraph.java:573) at com.boomi.process.graph.ProcessGraph.executeShape(ProcessGraph.java:510) at com.boomi.process.graph.ProcessGraph.executeNextShapes(ProcessGraph.java:573) at com.boomi.process.graph.ProcessGraph.execute(ProcessGraph.java:308) at com.boomi.process.ProcessExecution.call(ProcessExecution.java:812) at com.boomi.execution.ExecutionTask.call(ExecutionTask.java:935) at com.boomi.execution.ExecutionTask.call(ExecutionTask.java:61) at com.boomi.util.concurrent.CancellableFutureTask.run(CancellableFutureTask.java:160) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
Scratching my head here....does the user you're querying with have sufficient privileges for 1) API Access and 2) View Process Results?
Yes, he has admin role and here is the list of privileges for that user.
Hmm. The only way I can reproduce that error is if in Postman, I set the method incorrectly to GET.
When making the call in Boomi, any reason why you're using the generic HTTP connector vs. AtomSphere API connector?
Retrieving data ...