Microsoft Azure VM

Overview

Azure Virtual Machine allows you to flexibly run virtualized environments with the ability to scale on-demand.

Get metrics from Azure VM to:

  • Visualize the performance of your VMs.
  • Correlate the performance of your VMs with your applications.

Setup

Installation

If you haven’t already, set up the Microsoft Azure integration first.

For ARM deployed virtual machines, you must turn on Diagnostics and select the VM metrics to collect. See Enable Diagnostics for instructions.

Automuting monitors

Datadog can proactively mute monitors related to the shutdown or termination of Azure VMs, whether the shutdown was triggered manually or by Azure autoscaling, based on health statuses available through the Azure Resource Health API. By silencing monitors for expected Azure VM shutdowns, you can reduce noise from unnecessary alerts.

Automatically muted virtual machines are listed on the Manage Downtime page by enabling Show automatically muted hosts. The Azure integration must be installed for automuting to take effect.

To silence monitors for shutdown or terminated Azure VMs, check the Azure automuting box in the Azure integration tile.

To create metric monitors that can be automatically muted, ensure that you trigger based on the host tag. Metric monitors that do not include the host tag in the monitored group are not automatically muted.

A Monitor alerting on a query that includes host tag

Note: If you are not running the Datadog Agent, the host tag on your Azure VM is a GUID. Use the message template variable {{host.name_tag}} in the notification response to include the human readable name as well.

Data Collected

The azure.vm.status metric is deprecated and is no longer populated for newly created Datadog organizations. For existing users, this metric was disabled on June 1, 2023.

For any questions, contact Datadog Support.

Metrics

azure.vm.asp.net_applications_running
(gauge)
Number of applications running concurrently on the server computer
azure.vm.asp.net_applications_total_errors_total_per_sec
(gauge)
Rate of errors that occur during the execution of HTTP requests
Shown as error
azure.vm.asp.net_applications_total_pipeline_instance_count
(gauge)
Number of active request pipeline instances for the specified ASP.NET application.
azure.vm.asp.net_applications_total_requests_executing
(gauge)
Number of requests currently executing
Shown as request
azure.vm.asp.net_applications_total_requests_in_application_queue
(gauge)
Number of requests waiting for service from the queue
Shown as request
azure.vm.asp.net_applications_total_requests_per_sec
(gauge)
Rate of requests executed per second
Shown as request
azure.vm.asp.net_request_execution_time
(gauge)
Time to execute the last request
Shown as millisecond
azure.vm.asp.net_request_wait_time
(gauge)
Time that the most recent request waited in the queue for processing
Shown as millisecond
azure.vm.asp.net_requests_queued
(gauge)
Number of requests waiting for service from the queue
Shown as request
azure.vm.asp.net_requests_rejected
(gauge)
Total number of requests not executed because of insufficient server resources to process them
Shown as request
azure.vm.cpu_credits_consumed
(count)
Total number of credits consumed by the Virtual Machine
azure.vm.cpu_credits_remaining
(count)
Total number of credits available to burst
azure.vm.data_disk_qd_deprecated
(count)
Data Disk Queue Depth(or Queue Length)
azure.vm.data_disk_queue_depth_preview
(count)
Data Disk Queue Depth(or Queue Length)
azure.vm.data_disk_read_bytes_sec_deprecated
(count)
Bytes/Sec read from a single disk during monitoring period
Shown as byte
azure.vm.data_disk_read_bytes_sec_preview
(count)
Bytes/Sec read from a single disk during monitoring period
Shown as byte
azure.vm.data_disk_read_bytes_sec
(count)
Bytes/Sec read from a single disk during monitoring period
Shown as byte
azure.vm.data_disk_read_bytes_sec.max
(count)
Maximum Bytes/Sec read from a single disk during monitoring period (Max Aggregated)
Shown as byte
azure.vm.data_disk_read_operations_sec_deprecated
(count)
Read IOPS from a single disk during monitoring period
Shown as operation
azure.vm.data_disk_read_operations_sec_preview
(count)
Read IOPS from a single disk during monitoring period
Shown as operation
azure.vm.data_disk_write_bytes_sec_deprecated
(count)
Bytes/Sec written to a single disk during monitoring period
Shown as byte
azure.vm.data_disk_write_bytes_sec_preview
(count)
Bytes/Sec written to a single disk during monitoring period
Shown as byte
azure.vm.data_disk_write_operations_sec_deprecated
(count)
Write IOPS from a single disk during monitoring period
Shown as operation
azure.vm.data_disk_write_operations_sec_preview
(count)
Write IOPS from a single disk during monitoring period
Shown as operation
azure.vm.disk_read_bytes
(count)
(ARM VM only) Amount of bytes read
Shown as byte
azure.vm.disk_read_bytes_sec
(gauge)
(Classic VM only) Amount of bytes read per second
Shown as byte
azure.vm.disk_read_operations_sec
(gauge)
(ARM VM only) Amount of read operations per second
Shown as operation
azure.vm.disk_write_bytes
(count)
(ARM VM only) Amount of bytes written
Shown as byte
azure.vm.disk_write_bytes_sec
(gauge)
(Classic VM only) Amount of bytes written
Shown as byte
azure.vm.disk_write_operations_sec
(gauge)
(ARM VM only) Amount of write operations per second
Shown as operation
azure.vm.inbound_flows_maximum_creation_rate
(count)
The maximum creation rate of inbound flows (traffic going into the VM)
Shown as item
azure.vm.inbound_flows
(count)
Inbound Flows are number of current flows in the inbound direction (traffic going into the VM)
Shown as item
azure.vm.memory_available_bytes
(gauge)
(Windows) Pool size of available pages in RAM that the system uses to satisfy requests for new pages
Shown as byte
azure.vm.memory_available_swap
(gauge)
(Linux) Available swap
Shown as byte
azure.vm.memory_cache_faults_per_sec
(gauge)
(Windows) Rate at which pages sought in the cache were not found there and had to be obtained elsewhere in memory or on the dis
Shown as page
azure.vm.memory_committed_bytes
(gauge)
(Windows) Amount of committed virtual memory
Shown as byte
azure.vm.memory_page_faults_per_sec
(gauge)
(Windows) Overall rate at which the processor handles both hard and soft page faults.
Shown as page
azure.vm.memory_page_reads_per_sec
(gauge)
(Windows) Rate at which the disk is read to resolve hard page fault
Shown as page
azure.vm.memory_pages_per_sec
(gauge)
(Windows+Linux) Rate at which pages are read from or written to disk to resolve hard page faults
Shown as page
azure.vm.memory_pages_read_per_sec
(gauge)
(Linux) Rate of pages read to resolve hard page fault
Shown as page
azure.vm.memory_pages_written_per_sec
(gauge)
(Linux) Rate of pages writes
Shown as page
azure.vm.memory_pct_committed_bytes_in_use
(gauge)
(Windows) Ratio of Memory \ Committed Bytes to the Memory \ Commit Limit.
Shown as percent
azure.vm.memory_percent_available_memory
(gauge)
(Linux) Percentage of available memory available
Shown as percent
azure.vm.memory_percent_available_swap
(gauge)
(Linux) Percentage of available swap available
Shown as percent
azure.vm.memory_percent_used_by_cache
(gauge)
(Linux) Percentage of used memory per cache
Shown as percent
azure.vm.memory_percent_used_memory
(gauge)
(Linux) Percentage of available memory used
Shown as percent
azure.vm.memory_percent_used_swap
(gauge)
(Linux) Percentage of available swap used
Shown as percent
azure.vm.memory_pool_nonpaged_bytes
(gauge)
(Windows) Size of the nonpaged pool
Shown as byte
azure.vm.memory_pool_paged_bytes
(gauge)
(Windows) Size of the paged pool
Shown as byte
azure.vm.memory_transition_faults_per_sec
(gauge)
(Windows) Rate at which page faults are resolved by recovering pages without incurring additional disk activity
Shown as fault
azure.vm.memory_used_memory
(gauge)
(Linux) Used memory
Shown as byte
azure.vm.memory_used_swap
(gauge)
(Linux) Used swap
Shown as byte
azure.vm.net_clr_exceptions_global_of_exceps_thrown_per_sec
(gauge)
Number of exceptions thrown per second
Shown as error
azure.vm.net_clr_interop_global_of_marshalling
(gauge)
Total number of times arguments and return values have been marshaled from managed to unmanaged code, and vice versa, since the application started
Shown as operation
azure.vm.net_clr_jit_global_pct_time_in_jit
(gauge)
Percentage of elapsed time spent in JIT compilation since the last JIT compilation phase
Shown as percent
azure.vm.net_clr_loading_global_pct_time_loading
(gauge)

Shown as percent
azure.vm.net_clr_locks_and_threads_global_contention_rate_per_sec
(gauge)
Rate at which threads in the runtime attempt to acquire a managed lock unsuccessfully.
Shown as time
azure.vm.net_clr_locks_and_threads_global_current_queue_length
(gauge)
Number of threads that are currently waiting to acquire a managed lock in the application
Shown as thread
azure.vm.net_clr_locks_and_threads_global_of_current_logical_threads
(gauge)
Number of current managed thread objects in the application.
Shown as thread
azure.vm.net_clr_locks_and_threads_global_of_current_physical_threads
(gauge)
Number of native operating system threads created and owned by the common language runtime to act as underlying threads for managed thread objects
Shown as thread
azure.vm.net_clr_memory_global_allocated_bytes_per_sec
(gauge)
Rate of bytes allocated on the garbage collection heap
Shown as byte
azure.vm.net_clr_memory_global_bytes_in_all_heaps
(gauge)
Current memory allocated in bytes on the garbage collection heaps.
Shown as byte
azure.vm.net_clr_memory_global_gen_0_heap_size
(gauge)
Maximum bytes that can be allocated in generation 0
Shown as byte
azure.vm.net_clr_memory_global_gen_1_heap_size
(gauge)
Current number of bytes in generation 1
Shown as byte
azure.vm.net_clr_memory_global_gen_2_heap_size
(gauge)
Current number of bytes in generation 2.
Shown as byte
azure.vm.net_clr_memory_global_large_object_heap_size
(gauge)
Current size of the Large Object Heap
Shown as byte
azure.vm.net_clr_memory_global_pct_time_in_gc
(gauge)
Percentage of elapsed time that was spent performing a garbage collection since the last garbage collection cycle
Shown as percent
azure.vm.net_clr_networking_global_connections_established
(gauge)
The cumulative total number of Socket objects for stream sockets that were ever connected within the AppDomain since the process started.
Shown as connection
azure.vm.net_clr_remoting_global_remote_calls_per_sec
(gauge)
Number of remote procedure calls invoked per second
Shown as operation
azure.vm.network_in
(gauge)
Number of bytes received on all network interfaces by the instance.
Shown as byte
azure.vm.network_in_total
(gauge)
The number of bytes received on all network interfaces by the Virtual Machine(s) (Incoming Traffic)
Shown as byte
azure.vm.network_interface_bytes_received
(gauge)
Rate at which bytes are received over each network adapte
Shown as byte
azure.vm.network_interface_bytes_total
(gauge)
Rate at which bytes are sent and received on the network interface
Shown as byte
azure.vm.network_interface_bytes_transmitted
(gauge)
Rate at which bytes are sent over each network adapte
Shown as byte
azure.vm.network_interface_packets_received
(gauge)
Rate at which packets are received on the network interface
Shown as packet
azure.vm.network_interface_packets_transmitted
(gauge)
Rate at which packets are transmitted on the network interface.
Shown as packet
azure.vm.network_interface_total_collisions
(gauge)
Rate of collisions
azure.vm.network_interface_total_rx_errors
(gauge)
Rate of errors when receiving packets
Shown as error
azure.vm.network_interface_total_tx_errors
(gauge)
Rate of errors when sending packets
Shown as error
azure.vm.network_out
(gauge)
Number of bytes sent out on all network interfaces by the instance.
Shown as byte
azure.vm.network_out_total
(gauge)
The number of bytes out on all network interfaces by the Virtual Machine(s) (Outgoing Traffic)
Shown as byte
azure.vm.os_disk_qd_deprecated
(count)
OS Disk Queue Depth(or Queue Length)
azure.vm.os_disk_queue_depth_preview
(gauge)
OS Disk Queue Depth(or Queue Length)
azure.vm.os_disk_read_bytes_sec_deprecated
(count)
Bytes/Sec read from a single disk during monitoring period for OS disk
Shown as byte
azure.vm.os_disk_read_bytes_sec_preview
(count)
Bytes/Sec read from a single disk during monitoring period for OS disk
Shown as byte
azure.vm.os_disk_read_operations_sec_deprecated
(count)
Read IOPS from a single disk during monitoring period for OS disk
Shown as operation
azure.vm.os_disk_read_operations_sec_preview
(count)
Read IOPS from a single disk during monitoring period for OS disk
Shown as operation
azure.vm.os_disk_write_bytes_sec_deprecated
(count)
Bytes/Sec written to a single disk during monitoring period for OS disk
Shown as byte
azure.vm.os_disk_write_bytes_sec_preview
(count)
Bytes/Sec written to a single disk during monitoring period for OS disk
Shown as byte
azure.vm.os_disk_write_operations_sec_deprecated
(count)
Write IOPS from a single disk during monitoring period for OS disk
Shown as operation
azure.vm.os_disk_write_operations_sec_preview
(count)
Write IOPS from a single disk during monitoring period for OS disk
Shown as operation
azure.vm.outbound_flows_maximum_creation_rate
(count)
The maximum creation rate of outbound flows (traffic going out of the VM)
Shown as item
azure.vm.outbound_flows
(count)
Outbound Flows are number of current flows in the outbound direction (traffic going out of the VM)
Shown as item
azure.vm.percentage_cpu
(gauge)
Percentage of CPU resources used
Shown as percent
azure.vm.percentage_cpu.max
(gauge)
Maximum Percentage of CPU resources used (Max Aggregated)
Shown as percent
azure.vm.physical_disk_average_disk_queue_length
(gauge)
Number of requests that are queued and waiting for a disk during the sample interval
azure.vm.physical_disk_average_read_time
(gauge)
Percentage of time that the selected disk drive is busy servicing read requests.
Shown as percent
azure.vm.physical_disk_average_transfer_time
(gauge)
The average disk transfer time
Shown as percent
azure.vm.physical_disk_average_write_time
(gauge)
Percentage of time that the selected disk drive is busy servicing write requests.
Shown as percent
azure.vm.physical_disk_bytes_per_second
(gauge)
Rate of bytes
Shown as byte
azure.vm.physical_disk_read_bytes_per_second
(gauge)
Rate at which bytes are read
Shown as byte
azure.vm.physical_disk_reads_per_second
(gauge)
Rate of reads
Shown as read
azure.vm.physical_disk_total_disk_read_bytes_per_sec
(gauge)
Rate at which bytes are read on all disks
Shown as byte
azure.vm.physical_disk_total_disk_write_bytes_per_sec
(gauge)
Rate at which bytes are written on all disks
Shown as byte
azure.vm.physical_disk_transfers_per_second
(gauge)
Rate of transfers
azure.vm.physical_disk_write_bytes_per_second
(gauge)
Rate at which bytes are written
Shown as byte
azure.vm.physical_disk_writes_per_second
(gauge)
Rate of writes
Shown as write
azure.vm.premium_data_disk_cache_read_hit_preview
(gauge)
Premium Data Disk Cache Read Hit
Shown as percent
azure.vm.premium_data_disk_cache_read_miss_preview
(gauge)
Premium Data Disk Cache Read Miss
Shown as percent
azure.vm.premium_os_disk_cache_read_hit_preview
(gauge)
Premium OS Disk Cache Read Hit
Shown as percent
azure.vm.premium_os_disk_cache_read_miss_preview
(gauge)
Premium OS Disk Cache Read Miss
Shown as percent
azure.vm.process_total_handle_count
(gauge)
Total number of handles set for a process by the system
azure.vm.process_total_page_faults_per_sec
(gauge)
Number of page faults per second
Shown as fault
azure.vm.process_total_pct_processor_time
(gauge)
Percentage of elapsed time that all of process threads used the processor to execution instructions
Shown as percent
azure.vm.process_total_private_bytes
(gauge)
Total amount of memory that a process has allocated, not including memory shared with other processes
Shown as byte
azure.vm.process_total_working_set
(gauge)
Collection of those pages in a virtual address space that have been recently referenced for a given process. It includes both shared and private data
azure.vm.process_total_working_set_private
(gauge)
Collection of those pages in a virtual address space that have been recently referenced for a given process. It includes only private data
azure.vm.processor_percent_dpc_time
(gauge)
Percentage of the time in which the system was executing in Deferred Procedure Call
Shown as percent
azure.vm.processor_percent_interrupt_time
(gauge)
Percentage of the time the processor spends receiving and servicing hardware interrupts
Shown as percent
azure.vm.processor_percent_io_wait_time
(gauge)
Percentage of the time the processor spends on IO wait
Shown as percent
azure.vm.processor_percent_nice_time
(gauge)
Percentage of time occupied by user level processes with a positive nice value
Shown as percent
azure.vm.processor_percent_privileged_time
(gauge)
Percentage of the time in which the system was executing in Privileged mode
Shown as percent
azure.vm.processor_percent_processor_time
(gauge)
Percentage of elapsed time that the processor spends to execute a non-Idle thread
Shown as percent
azure.vm.processor_percent_user_time
(gauge)
Percentage of the time that the system is executing in User mode.
Shown as percent
azure.vm.processor_total_pct_interrupt_time
(gauge)
Percentage of time the processor handles interrupts from applications or hardware devices.
azure.vm.processor_total_pct_privileged_time
(gauge)
Percentage of time the processor was running in Provileged mode.
azure.vm.processor_total_pct_processor_time
(gauge)
Percentage of time the processor was busy during the sampling interval
azure.vm.processor_total_pct_user_time
(gauge)
Percentage of time the processor was running in user mode.
azure.vm.sql_server_general_statistics_user_connections
(gauge)
Number of connected users.
Shown as connection
azure.vm.sql_server_memory_manager_total_server_memory_kb
(gauge)
Amount of bytes the mssqlserver service is currently using
Shown as kibibyte
azure.vm.sql_server_sql_statistics_batch_requests_per_sec
(gauge)
Number of batches SQL Server is receiving per second.
Shown as request
azure.vm.sql_server_sql_statistics_sql_attention_rate
(gauge)
azure.vm.sql_server_sql_statistics_sql_re_compilations_per_sec
(gauge)
Number of times SQL Server compiles an execution plan per second.
azure.vm.status
(gauge)
Status of Azure VM (deprecated)
azure.vm.system_processes
(gauge)
Number of processes
Shown as process
azure.vm.system_threads
(gauge)
Number of threads that are in the processor queue.
Shown as thread
azure.vm.tcpv4.connections.established
(gauge)
Number of TCP connections for which the current state is either ESTABLISHED or CLOSE-WAIT
Shown as connection
azure.vm.tcpv4.connections.failures
(gauge)
Number of times that TCP connections have made a direct transition to the CLOSED state from the SYN-SENT or SYN-RCVD state, plus the number of times TCP connections have made a direct transition to the LISTEN state from the SYN-RCVD state.
Shown as connection
azure.vm.tcpv4.connections.reset
(gauge)
Number of times that TCP connections have made a direct transition to the CLOSED state from either the ESTABLISHED or CLOSE-WAIT state.
Shown as connection
azure.vm.tcpv4.segments.received_per_sec
(gauge)
Rate at which TCP segments are received by using the TCP protocol
Shown as segment
azure.vm.tcpv4.segments.retransmitted_per_sec
(gauge)
Rate at which segments are transmitted that contain one or more bytes that TCP recognizes as having been transmitted before.
Shown as segment
azure.vm.tcpv4.segments.sent_per_sec
(gauge)
Rate at which TCP segments are sent by using the TCP protocol.
Shown as segment
azure.vm.thread_total_context_switches_per_sec
(gauge)
Rate of context switches generated by all threads.
Shown as occurrence
azure.vm.web_service_total_bytes_total_per_sec
(gauge)
Sum of bytes sent/sec and bytes received/sec
Shown as byte
azure.vm.web_service_total_connection_attempts_per_sec
(gauge)
Rate of attempted connections to the WWW service since service startup
Shown as connection
azure.vm.web_service_total_current_connections
(gauge)
Current number of active connections to the WWW service
Shown as connection
azure.vm.web_service_total_get_requests_per_sec
(gauge)
Rate at which requests using the GET method are made to the WWW service
Shown as request
azure.vm.web_service_total_isapi_extension_requests_per_sec
(gauge)
Rate of ISAPI extension requests that are processed simultaneously by the WWW service,
Shown as request
azure.vm.web_service_total_post_requests_per_sec
(gauge)
Rate at which requests using the POST method are made to the WWW service
Shown as request

Events

The Azure Virtual Machine integration does not include any events.

Service Checks

The Azure Virtual Machine integration does not include any service checks.

Troubleshooting

Need help? Contact Datadog support.

Further Reading