You've got health checks in place. With just one HTTP call you can check if an app is healthy.
So how do you make it automatic, so you'll be the first to know if the system goes down?
1\ With the rise of distributed systems, it's increasingly important to have a robust monitoring solution in place. Health checks allow you to monitor the health of your apps and detect any issues before they escalate.
And then it has to be monitored all the time.
2\ The benefits of continuous monitoring and alerting are numerous. It allows you to detect issues early, minimize downtime, and improve user experience. It also helps you respond quickly to incidents and resolve them before they become bigger problems.
3\ So how does it work in general? 3 simple steps:
- Health check endpoint is continuously called, e.g. each minute
- If the status is not 200 -> send an alert.
Alerts can be anything: email, SMS, webhooks, etc.
4\ Is there a need to implement those steps by hand? Not necessarily. There are a lot of ready solutions: from Cloud providers (Azure, AWS, Google Cloud, etc), to open-source self-hosted apps.
5\ Azure Monitor is a comprehensive monitoring solution offered by Microsoft Azure for monitoring Azure services and resources. It provides a single source of monitoring data for your applications, resources, and infrastructure.
It can just handle it all: monitoring, alerts, etc
6\ AWS CloudWatch is a monitoring service offered by Amazon Web Services that provides a unified view of your resources and applications. It provides real-time and historical performance data, allowing you to monitor the health and performance of your apps and infrastructure.
7\ I'm a true fan of OSS, and I try to keep everything vendor-ignorant in my pet projects. The solution I use currently is Uptime Kuma by @LouisLam.
It's effortless to host via docker and performs its job really well when it comes to monitoring and alerting.
@LouisLam 8\ Let's wrap it up. 3 steps to reach the critical monitoring milestone:
- Have health checks in place
- Choose your monitoring service
- Configure it with your apps and alerts you want to receive
That's all reachable in under 30 min, and the benefits it brings are tremendous.
@LouisLam I hope you find some insights and get an idea of continuous monitoring and alerts. Though, health checks are not enough.
Next stop - monitoring CPU, RAM, etc. That's gonna be a topic for another thread 😀
Consider subscribing so you won't miss it!
Like and RT, if you enjoyed it
• • •
Missing some Tweet in this thread? You can try to
force a refresh
1\ Understanding the behavior and performance of your ASP.NET Core application are critical for ensuring its reliability and availability.
With the right tools, you can monitor key performance indicators, track error rates, and resource utilization.
2\ So what to measure exactly? 🤔
Everything. Any data can be viable and bring unique tech and business insights:
- System resources: RAM, CPU, Network, Disk, etc
- Endpoints: throughput, response time, error rate
- Status codes: 200, 500, etc
- Validation errors