DEV Community

Cover image for How to Configure monitoring for compute services
Oluwanifesimi
Oluwanifesimi

Posted on

How to Configure monitoring for compute services

Introduction
In today’s cloud-driven world, monitoring compute services is essential for maintaining performance, availability, and reliability. As businesses increasingly depend on virtual machines and cloud-native applications, having a proactive monitoring strategy becomes non-negotiable. It’s not just about collecting data—it’s about gaining real-time insights, spotting anomalies early, and minimizing downtime before it impacts users or operations.

This project focuses on building a robust monitoring framework for Azure compute services. By configuring data collection and analysis tools, we aim to improve visibility, streamline troubleshooting, and empower smarter decision-making.

Objectives
To achieve this, we’ll walk through the following key tasks:

  • Set up a Data Collection Endpoint
  • Create a Data Collection Rule
  • Add IIS Log Collection to an existing rule
  • Configure Network Connection Monitor for a Linux IaaS VM

Together, these steps lay the foundation for a scalable and intelligent monitoring system.

Step 1: Create a Data Collection Endpoint
Think of this as installing a mailbox for your telemetry. Without it, logs and performance data stay locked inside individual VMs. With it, everything gets routed to a central hub—like Azure Monitor or Log Analytics—where you can actually analyze and act on the information.

Real-World Scenario
Imagine you’re running several virtual machines. One of them crashes unexpectedly. If you haven’t set up a data collection endpoint, you might not even know it happened until users complain. But with the endpoint in place, the crash logs are automatically sent to your monitoring dashboard—giving you the visibility to respond quickly.

Example: A Windows VM restarts due to a system failure. Thanks to the data collection endpoint, the event is logged and surfaced in Azure Monitor, allowing your team to investigate and resolve the issue before it escalates.

  • In the Azure Portal Search Bar, enter Monitor and select Monitor from the list of results.
    monitor

  • In the Monitor page, under Settings, choose Data Collection Endpoints.

  • On the Data Collection Endpoints page, choose Create.
    endpoint

  • On the Create Data Collection Endpoint page, provide the following settings and then choose Review + Create.
    Property Value
    Endpoint name IaaSVMCollectionEndpoint
    Subscription Your subscription
    Resource Group NK_RG
    Region Canada Central
    DATA COLLECTION

  • Review the settings and choose Create.
    SETTING CREATE

** Step 2 Create a data collection rule**

What it does:
The rule decides what kind of data should be collected and where it should go.

Real-life example:
You configure a rule to collect Windows Event Logs from your VMs. These logs capture:

  • Failed login attempts (security threats )
  • Service crashes (like SQL Server suddenly stopping)
  • System warnings (like low memory alerts)

Example: If someone tries to brute-force passwords on your VM, the Windows Security log will show repeated failed login attempts. With a collection rule in place, you’ll spot this early and block the attacker.

  • In the Azure Portal Search Bar, enter Monitor and select Monitor from the list of results.
    MONITOR DATA RULE

  • In the Monitor page, under Settings, choose Data Collection Rules.

  • On the Data Collection Rules page, choose Create.
    MONITOR PAGE

  • On the Create Data Collection Rule page, configure the following settings and choose Next.
    Property Value
    Rule name WinVMDCR
    Subscription Your subscription
    Resource Group NK_RG
    Region Canada Central
    Platform type Windows
    Data collection endpoint IaaSVMCollectionEndpoint
    DCR

  • On the Resources page, choose Add Resources.

  • On the Select a scope page, enable the DynamicVM checkbox and choose Apply.
    scope page

  • On the Create Data Collection Rule page, choose Next.

  • On the Collect and Deliver page, choose Add data source.

  • On the Add data source page, select Windows Event Logs.

  • In the Application category enable the Critical and Error categories.

  • In the Security category, choose the Audit Failure category.

  • In the System category, enable the Critical and Error categories.

  • Choose Next.
    audit

  • On the Destination page, configure the following settings:

Property Value
Destination type Azure Monitor Logs
Subscription Your subscription
Account or namespace NKlogAnalytic
Choose Add data source.
Choose Review + Create and then choose Create.
NKLOG

crrreate

  • Data Collection rules is created successfully successful data

step 3 Add an IIS log collection to an existing data collection rule

What it does:
Captures web server activity logs (IIS).
Real-life example:
Your web app hosted on IIS starts running slow. By looking at IIS logs, you can see:

Which pages are taking too long to load
If users are getting “500 Internal Server Error"
If there’s unusual traffic (like a sudden spike that might be a DDoS attack)
Example: IIS logs reveal that a particular API endpoint /login is throwing 500 errors frequently. This helps developers fix the bug quickly.

In the Azure Portal Search Bar, enter Monitor and select Monitor from the list of results.
portal search

  • In the Monitor page, under Settings, choose Data Collection Rules.
  • Choose the WinVMDRC rule in NK_RG.
    WIN

  • Under Configuration, choose Data Sources.

  • On the Data Sources page, choose Add.

  • On the Add Data Source page, select IIS Logs.

  • Choose Next.
    IIS

On the Destination page, configure the following settings:

  • Property Value
  • Destination type Azure Monitor Logs
  • Subscription Your subscription
  • Account or namespace NKLogworkspaceanalytic
  • Choose Add data source.
    destination

  • IIS log as been added to the data collection rule.
    log added

Step 4 Configure Network Connection Monitor for a windows/linux IaaS virtual machine

What it does:
Checks if your VM’s network connections are healthy and reliable.

Real-life example:
If your VM hosts a database, applications must always reach it quickly. The monitor will alert you if:

The connection is dropping packets
Latency (delay) is too high
The VM is unreachable from certain regions
Example: A user in Europe complains your app is slow. Network Connection Monitor shows high latency between your Windows/Linux VM (in West US) and Europe, confirming it’s a network issue, not the app itself.

In the Azure Portal Search Bar, enter Network Watcher and select Network Watcher from the list of results.
network watcher

  • Under Monitoring, choose Connection Monitor.
  • On the Connection Monitor page, choose Create. monitor

On the Basics page of the Create Connection Monitor wizard, provide the following information and choose Next.

  • Property Value
  • Connection Monitor name DynamicNetMonitor
  • Subscription Your subscription
  • Region Canada Central
  • Workspace NKLogworkspaceanalytic
    monitor wizard

  • On the Add test group details page, enter the name LinuxIPTest and choose Add sources.

LinuxIPTest

On the Add Sources page, select Azure Endpoints and set the type to Virtual machines. Select Subnet and then enable the DynamicLinuxVm checkbox. Choose Add Endpoints.
CHECKBOX

  • Choose Add Test Configuration.
    add test configuration

  • On the Add Test Configuration page, enter the name DefaultHTTP and then choose Add Test Configuration.
    default http

  • Choose Add Destinations.
    add destination

  • Select Azure Endpoints and set the type to Virtual machines. Select Subnet and then enable the DynamicLinuxVm checkbox. Select Add Endpoints.
    enndpoint

  • Choose Add Test Group.
    test grroup

  • Choose Review and Create then choose Create.
    test endp

  • Then choose Create.
    choose create

  • Connection Monitor is created successfully
    monitor created

Conclusion
This project showcases a comprehensive approach to monitoring compute services through structured data collection and analysis. By establishing a robust data collection endpoint, defining monitoring rules, incorporating IIS log tracking, and deploying a Network Connection Monitor for Linux-based IaaS, we have developed a dependable solution that enhances operational transparency. These capabilities empower administrators with real-time visibility into system performance and security, enabling swift issue detection and resolution. Ultimately, the project underscores the critical role of proactive monitoring in maintaining stability, optimizing performance, and ensuring user satisfaction within modern cloud infrastructures.

Top comments (0)