We have had this question a couple of times; "I can specify what I need to monitor with BAM, what is AIMS doing differently?"
BAM is built-in functionality in BizTalk and allows you to track basically anything ranging from message payload to metadata, delays and throughput. However, to make this happen, there is a lot of manual work to be done:
- Define your activities (what you need to track). You can have multiple activities depending on what you need to track
- Deploy your activities
- Create tracking profiles (where to fetch data from). Again you might need to create multiple tracking profiles if you are fetching data from different components using different activities
- Deploy your tracking profiles
Then you will need a place to view the data, so you will need to configure and create views in the BAM Portal that is shipped with BizTalk. If you also need alerts to be created for certain conditions or thresholds you face yet another step. You will also need a BizTalk developer by your side to create and deploy these activities and tracking profiles, and to properly navigate the BizTalk source code so you get the content you are looking for.
So....you finally have it all up and running, and you're happy. For a while.....then your BizTalk developers deploy some modifications to the data / components you are monitoring and suddenly you don't have any data or monitoring in place. Suddenly your tracking profiles (they are responsible for fetching data from specific places and populate your activities) don't have proper references due to the modifications. Hence no more data!
You will then need to grab one of your BizTalk developers (if they have the knowledge and are available) and have them update the tracking profiles and redeploy them to the production environment.
But hey! Should the BAM changes not be tested properly first before being deployed to production? Yes....they should, so this can be a very long and tedious process and you lose your insight and monitoring while doing so.
And this process will occur every time you do some changes or modifications to the components you fetch data from, or if you choose to modify the milestones or data you monitor.
AIMS monitoring is completely automated and is not dependent on any specific BizTalk feature. There is no need for manual setup or to define thresholds and components to monitor. Everything is monitored once the AIMS agent is deployed to your BizTalk, and dynamic thresholds for all components are created without any manual interference. If you then do some modifications or add some new components (ports or orchestrations), AIMS will automatically adjust and monitor these as well.
AIMS however does not capture payload of the messages. The reason for this is the enormous performance overhead introduced by doing so. On the bright side, the technology used in the AIMS agents allows you to deploy monitoring to any BizTalk setup, regardless of the throughput and stress on the server. The AIMS agent introduces close to zero performance overhead due to the profiling mechanisms used, and it will automatically monitor all your BizTalk ports and orchestrations even if you modify or introduce new components.
And best of all.....you do NOT have to be a BizTalk expert to do this!
So in short (and compared to BAM), AIMS is completely automated and you also have deep analytics in place so you can create automated reports and dashboard components without the need of BizTalk knowledge. You can focus on using the data instead of trying to access the data.