I'm managing a diverse setup with various deployment types and I'm looking for the best way to monitor everything effectively. Our environment includes:
- Fully hosted apps on Azure Web Apps (PaaS), which cover both frontend and backend.
- Some applications are strictly hosted on VMs (SaaS-style) – with some in Azure and others on DigitalOcean.
- We're also using hybrid models where the frontend is in Azure Web App and the backend operates on VMs, either in Azure or DigitalOcean.
I'm aiming to establish a centralized monitoring system that can track:
- App performance for both frontend and backend.
- Resource usage of VMs including CPU, memory, and disk.
- Uptime along with basic service checks.
- Log centralization.
- Alerts pushed to Slack or Email.
4 Answers
Just to clarify, how can you have a *SaaS style* infrastructure with VMs? I recommend being agnostic about PaaS services and consider moving or configuring everything to IaaS (using VMs). Tools like Ansible or Salt Stack for configuration and Terraform for provisioning can help. This way, you can centralize everything more effectively based on what I've seen in other comments.
Check out cloud-agnostic tools like Datadog or Sentry. I would suggest steering clear of cloud-specific options like Azure Monitor, since that might limit you if you want to use it beyond the Azure ecosystem.
Given that most of your infrastructure is on Azure, Azure Monitor could be your best option. It supports OpenTelemetry, so with some adjustments, you can integrate applications that are hosted elsewhere. Once you set up Azure Monitor, you can think about implementing alerts and log management strategies.
What you’re after is commonly referred to as 'observability'. Look into Open Telemetry, Prometheus, and Grafana for monitoring solutions. Another solid option is the ELK Stack (Elastic Search, Logstash, Kibana). These setups help you channel data into a centralized system for visualization and alerts. Just be aware that managing such a stack can require significant effort; we even developed our own in-house solution after testing multiple options and deciding against extra complexities.
Related Questions
Cloudflare Origin SSL Certificate Setup Guide
How To Effectively Monetize A Site With Ads