Docker containers are used as data collectors. You write your application in the programming language you choose, and your application should be stateless. You fetch the data for the end-users, push it to our API, then query it and visualize it using the Visualizer.
How do collectors work?
Every container should follow the following steps:
- Fetch the information of 500 (fixed number) instances that have not been updated in the last no. of minutes/hours/days/months. (set this in the Collector tab, which is labeled 'Instances should be available for update after')
- Fetch the parameters of the instances.
- Fetch the data for those instances. (From their source's API)
- Push the relevant data to our API.
- Mark those instances as updated.
If your monitor doesn't require any parameters, the steps will be:
- Fetch the data.
- Push the data to our API.
After doing that and pushing your collector, CoreBI will run it periodically.