We have logs scattered all over our servers, and when something goes wrong, it takes forever to investigate. Can we centralize all of our OS and application logs in one place in Azure? I have heard of Log Analytics, but is it too expensive? I need a way to query logs across different resource groups easily.
Azure Monitor Log Analytics enables centralized log management across multiple resource groups through Kusto Query Language, with costs managed by configuring granular data collection rules to filter unnecessary ingestion.
2 answers
Azure Monitor Log Analytics is the standard industry solution for centralized log management, and its cost is primarily driven by your data ingestion volume and retention policy rather than the service itself. To maintain fiscal control, you must define granular data collection rules at the agent level to ingest only the specific event IDs or Syslog facilities required for compliance and incident response, rather than streaming unfiltered operational noise. By leveraging Kusto Query Language, you can execute cross-resource group analytical queries with high performance, provided your workspace architecture is consolidated to avoid unnecessary cross-workspace overhead.
I remember back when we were manually SSHing into twenty different production VMs just to grep for a single failure correlation, and frankly, that level of manual labor is a massive hidden cost that far outweighs the Azure bill. We eventually shifted to a centralized workspace model precisely because hunting for errors across resource groups manually is an unsustainable tax on your engineering time.
You are looking at this through the lens of pure infrastructure spend, but you need to account for the labor cost of troubleshooting incidents in a fragmented environment. Moving your logs to Log Analytics is the correct architectural move, provided you implement strict ingestion controls to stop your developers from dumping every debug-level verbose log into the system for no reason.

