We deploy several applications across EC2 instances. They are jar files, war files on Tomcat, npm based UI applications and python scripts.
Each has a different way of validation.
For war files under Tomcat webapps I can check the swagger UI.
For UI projects I can check the application link.
For standalone jar and python scripts I check the process, if running.
Is there a way I can place checks(on the vm or in AWS) that send status(up/running or down/offline) to AWS so it is viewable for all applications across all instances?
I thought about using monit i.e. write config to monitor processes and links of individual applications. But there is no way to send it to a "one place" dashboard in AWS
Monit has it's own dashboard but it is instance specific. So if I have 20 instances there's 20 dashboards like http://IP:2812/. It has a centralized dashboard offering which is not open source so I cannot use it
I checked the AWS resource health sub category within Cloudwatch. That is limited to cpu/memory/status checks and I don't see a way for customization to track individual jar/war files
I checked AWS X ray, and seeing that it requires changes to the application code makes me think it will extract too much data like number of 4XX and 5XX(which isn't the need since all I need to do is check links or processes and report it visually)
Is there a way to visualize resource health of all applications on all instances on a single dashboard/page either in AWS or some opensource tool?