If I understand how tags are getting used, I think tags will provide the ability to keep track of history regardless of whether we are dealing with a new container or an application which is no longer alive.
However, what is not clear to me is what happens when the old container goes away. I am assuming that we will no longer be attempting to probe it or gather data from it?
Ultimately what I, as a user, want to be able to do is change network configuration or platform or container without changing what defines my application. For example, if I have a helloworld.war deployed to an EAP server and am monitoring it, I really don't care about the other stuff. If it changes, so be it. But my helloworld application should still be reflected the same.
If the database my helloworld application uses changes, so be it. I still want to treat the datasource as the same datasource it always was even if the underlying implementation changes and a new inventory object to represent it gets created. My expectation is that _helloworld-datasource_ is _datasource-pg94_ and _datasource-pg95_ and _datasource_mysql_ combined. Even though in reality I started with PostgreSQL 9.4; upgraded to PostgreSQL 9.5; and decided to migrate to MySQL at some point. In the end, I want to view the datasource metrics based on the entire life-cycle as that datasource relates to my helloworld application.
The same could be said for my helloworld application's underlying application server. Perhaps I have my WAR deployed to EAP 7.1 to start but later I upgrade to EAP 8. It is still my helloworld application.
In the past I would suggest providing a "linking" capability that would allow me to identify the EAP 8 instance as a continuation or upgrade of the specific EAP 7.1 instance. Or the MySQL datasource as a continuation or upgrade of the PostgreSQL 9.5 datasource and the 9.5 datasource an upgrade or continuation of the PostgreSQL 9.4 datasource. However, if I understand how tagging is getting implemented, tags would also accomplish this.
If I have separate objects in inventory, they would just get tagged as helloworld application. When I view history, I am seeing the milestones across the various inventory objects that make up what I am referring to as helloworld application. For example, if I had to spin up a new container every day for the last 7 days, then perhaps it would be interesting to see that indicated in the history, but the metric values are considered to be a single series as they relate to the all 7 containers.
But to take the burden of the user to tag each new container that represents helloworld, I would hope that we can figure out how to do this automatically and then allow the user to update/fix tags if they are wrong?
In any event, just my thoughts as this does relate to a very big pain point with the legacy RHQ and JBoss ON implementation.