Versioning in monitor models
You can have multiple versions of a monitor model for a process application and its snapshots, though only one version can be active at any given time. Data captured by older versions is still visible on the dashboard.
Monitor models are identified by an ID (for example, bmon_ORDPROC_MAIN) and a version timestamp (for example, 2011-01-01T12:00:00+0400). Models with different IDs are unrelated. Models that share the same ID and have different, increasing timestamps are related and are considered versioned.
- CreateNewInstances: Events are processed and new monitoring context instances can be created as a result.
- UpdateExistingInstancesOnly: Events for existing monitoring context instances are processed, but events that would create new root monitoring context instances are ignored.
- InactiveSaveEvents: Events are saved for a future monitor model version to process. The events are not processed by the current monitor model version.
- Inactive: Events are not distributed to this monitor model version.
Only the most recent version of a monitor model can have an event consumption mode of CreateNewInstances.
When you deploy a new version of the monitor model, a set of tables and views is created in the MONITOR database to support that version. Additionally, a set of cross-version views is created to support dashboard queries that require data across all the current and previous model versions. Data that did not exist in previous model versions results in null values being returned.
Versioning limitations
Because the database views union data together across model versions, some types of changes are not supported. If you change the data type of an existing auto-tracked field or tracking group, any subsequent deployment of the generated monitor model fails. In order to make changes to data types, you must remove the existing monitor model and create a new one that has a different ID. See Replacing a generated monitor model with a new monitor model.