I want to upload a file to Apromore using Shell. Does Apromore have an API?
Apromore is meant to be an interactive exploratory tool, so it was not designed with API in mind. BUT, it is architected for programmatic data update. To do this, you should first upload a log manually, via the UI. This creates the necessary metadata in the database, and puts a copy of the uploaded log in sub-directory "
Event-Logs-Repository" under the main installation directory. For example, if you upload two logs called “Order-to-Cash-PreviousMonth” or “Order-to-Cash-PreviousQuarter”, you will find the corresponding .xes files in Event-Logs-Repository.
You can update these logs by over-riding them with the new version anytime. For example, you can run a shell script periodically (as a cron job) that replaces these two .xes files with the latest version of the data extracts. This way, whenever a user logs-in, they will open the updated version of the “previous month” and “previous quarter” logs.
Note: If your data extract is in CSV format, you can use pm4py or bupaR to do the csv-to-xes conversion programmatically.
It also helped me by telling me how to convert to XES.
I’ll give it a try.
I overwrote the “Event-Logs-Repository” file as you advised. But when I open Apromore it is not updated.
What could be the cause?
Apromore’s recent version use a cache (Ehcache). So a cached copy of the old log might be staying there for some time. I can ask the developers what can be done to make sure Apromore CE re-loads?
Could you tell me which version of Apromore do you have? Is it Apromore CE Docker:
…or is it ApromoreCE built from source code?
And what version is it? (You can check this out by clicking on the icon at the top-right corner of the Apromore portal, select option “About” and read the version from the pop up).
Finally, just to check: can you pls stop the Apromore server, start again, and then check if Apromore picks up the latest version of the log?