another quick example on how we can quickly build apps using the HCL Domino AppDevPack. Here goes:
Customer: "I need to get some statistics on our Domino Applications - as a timeline slide to see trends, how can we do that ?"
Me: "There are analytics tools from other partner that can get this done"
Customer: "No, I want something that I can extend over time myself..."
Me: "Well, what do you need from a KPI Point of view ?"
Customer: "Usage of the App, Diskspace development. read and write access"
Me: "OK, Domino can give you all of this out of the box."
Customer: "Really ?! Can you guys build me a starting web component that I can integrate into our intranet ?"
So here goes. Domino actually does create all of this data on a daily basis for each application on a specific server. Here's what we will be using:
Check out your server's log and switch to this view:
There's this document called "Activity". Domino writes this on a daily basis for each application. It gives you the following data:
Now, as I said, this documents gets overwritten on a daily basis. So to get a series of data, I created a new database based on log.ntf and a simple agent that copies the activity documents for all the databases I want to get statistic data for into this new database.
This gives me a daily series of usage data like so (added a view to view the data):
Now having this, I just used our IMPRISIS Basic React Client and created a react component to get the data and display it using ReCharts.
The data is automatically read via domino-db and passed as JSON data to the component. The chart itself is defined as JSON Object in our IMPRISIS Design Repository Db where we can define queries and define renderings for them. So basically, I can bring data and representation together dynamically. We can also do data conversion between the domino-db documents and the data structure used in the chart.
With that, we start the react component, which gives us a chart like this:
The chart contains an area chart for the disk space, bar charts for read and write access numbers and a line chart for usage counts.
The cool thing here is that using our IMPRISIS component framework for React, I was able to build a reusable charting component that is completely agnostic of the chart representation and the data it represents, All of that can be passed dynamically to the component and gets automatically read out by our domino-db based REST-API Middleware,
Total development time: 1 day.
What do you think ?