Ez egy ortogonális dolog a monitoringra.
Az, hogy valami hibatűrően van integrálva (circuit breaker, default fallback, retry policyk stb.) segítségével, az teljesen független attól, hogy monitorozni akarom azt a komponenst, ami így van elkészítve. Hiszen ha szó szerint kell érteni, amit mondasz, akkor hibatűrően integrált komponenst nem kell monitorozni, hiszen hibatűrően van integrálva. Ez értelmetlen.
Ezek szerint ha hibatűrő minden komponenseim, nem kell monitorozni semmit. Azaz ha a rendszerben állandósul az az állapot, hogy egy hibatűrő komponens állandóan a fallback működést választja, akkor erről nem tudok értesülni, mivel nincs monitoringom, mert hibatűrő rendszerre minek. Viszont én szeretném tudni a kivételes állapot meglétét, azért, hogy be tudjak avatkozni, és az elvárt állapot felé tudjak haladni. Ehhez meg monitoring kell.
Attól, hogy a komponensem hibatűrő, azaz a felhasználó felé mondjuk sosem jut el hibajelzés, mert mindig van retry, fallback stb, attól még a rendszer eredménye nem az elvárt lesz. És fel kell tudnom deríteni, hogy melyik ponton kell beavatkozzak, hogy annak ellenére, hogy katasztrofális hiba nincs, mégis az elvárt viselkedést tudja nyújtani a rendszer. Ehhez pedig monitoring kell, a külső függésekre is.
Amikről beszélsz (sidecar, proxy stb), csak eszközök arra, hogy alapvetően nem erre felkészített rendszert körbe tudj csomagolni hibatűrést implementáló eszközökkel. Ezek csak kalapácsok, de nem segítik elő annak az elvnek a megvalósítását, hogy szeretném tudni, hogy a rosszul viselkedő rendszerembe hol kell beavatkozzak, hogy ne a kivételes(de leállást nem okozó), hanem az elvárt működés legyen a rendszer állapota. Ehhez meg kell tudnom figyelni a rendszer állapotát, azaz monitoring kell.