MicroProfile Metrics exposes the metric data (often called telemetry) of the running server, for example, CPU and memory usage, and the thread count. This data is then often fed into charting systems to visualize metrics over time or to serve capacity-planning purposes; of course, they also serve to notify DevOps people when the values go outside a predefined threshold range.
The Java Virtual Machine had a way to expose data for a long time via MBeans and the MBeanServer. Java SE 6 saw the introduction of an (RMI-based) remote protocol for all VMs defining how to access the MBean Server from remote processes. Dealing with this protocol is difficult and does not fit in with today's HTTP-based interactions.
The other pain point is that many globally existing servers have different properties exposed under different names. It is thus not easy to set up monitoring...