Configure VM watch
VM watch signals are logically grouped into Collectors Suite, which can be categorized into two groups: core and optional. By default, only core group collectors are enabled with default configurations. However, these default settings can be easily overwritten from vmWatchSettings
using either ARM template, Azure CLI, or PowerShell.
This article describes how to configure VM watch to suit your specific requirements.
Prerequisites
This article assumes that you're familiar with:
- VM watch checks, metrics, and logs
- Installing VM watch to virtual machines and scale sets
- VM watch Collectors Suite
Access vmWatchSettings
on Azure virtual machines
Important
The code segment is identical for both Windows and Linux except for the value of the parameter <application health extension type>
passed into the Extension Type. Replace <application health extension type>
with ApplicationHealthLinux
for Linux and ApplicationHealthWindows
for Windows installations.
- Navigate to the Overview page on Azure portal and click on the JSON view for the VM to find the code segment below.
- Copy the code segment to an IDE such as Visual Studio Code and make customizations as needed
{
"settings": {
"vmWatchSettings": {
"enabled": true
}
}
}
Customize VM watch configurations
VM watch signals can be customized by configuring the vmWatchSettings
properties to meet specific requirements. The following table lists the properties for vmWatchSettings
.
vmWatchSettings Properties
Name | Type | Description | Is Required |
---|---|---|---|
enabled | bool |
This allows you to enable or disable VM watch | true |
signalFilters | object |
This filters the enabled / disabled signals, either by tag or collector name. | false |
parameterOverrides | object |
This specifies the parameters that can be overwritten for each signal execution. The full list of overwritable parameters can be found in the VM watch Collectors Suite page. | false |
environmentAttributes | object |
This specifies any environment attributes that help decide if a test is eligible to execute or not. | false |
Important
For the full list of collectors, associated signals, tags, overwritable parameters, and environment attributes, visit VM watch Collectors Suite page
Switch on/off VM watch
VM watch can be switched on / off by configuring the enabled
property, as shown in the code segment.
{
"vmWatchSettings": {
"enabled": true
}
}
Note
Name | Description |
---|---|
true | This setting enables VM watch |
false | This setting disables VM watch |
Enable/Disable signal execution
By default, only the core group signals are enabled. However, the signalFilters
property can be used to control and configure the signals to be executed. This property includes the following subfields.
Subfields | Description |
---|---|
enabledTags | This enables the signals in the optional group specified with tags provided by the user |
disabledTags | This disables the signals in the core and optional groups specified with tags provided by the user |
enabledOptionalSignals | This enables signals specified in optional group. Provide collector name(s) as parameter |
disabledSignals | This disables the signals specified in the core and optional groups. Provide collector name(s) as parameter |
For instance, to enable signals in the optional group containing Network
tag and disable signals containing Disk
tag, specify such tags under the enabledTags
and disabledTags
as shown:
{
"vmWatchSettings": {
"enabled": true,
"signalFilters": {
"enabledTags": [
"Network"
],
"disabledTags": [
"Disk"
]
}
}
}
Similarly, to enable an optional group signal with name hardware_health_monitor
, and disable signals with name process
and dns
, specify such names under the enabledOptionalSignals
and disabledSignals
as shown:
{
"vmWatchSettings": {
"enabled": true,
"signalFilters": {
"enabledOptionalSignals": [
"hardware_health_monitor"
],
"disabledSignals": [
"process",
"dns"
]
}
}
}
Configure signal execution frequency
The signal execution frequency can be customized by adjusting the parameterOverrides
property.
For instance, to set the outbound_connectivity
test execution frequency to 120 seconds, specify the following configuration:
{
"vmWatchSettings": {
"enabled": true,
"parameterOverrides": {
"OUTBOUND_CONNECTIVITY_INTERVAL": "120s"
}
}
}
Override default signal execution parameters
Signal execution parameters can be overwritten by setting the parameterOverrides
property. For instance, to set disk_io
signal mount point to /mnt
, the following configuration can be specified:
{
"vmWatchSettings": {
"enabled": true,
"parameterOverrides": {
"DISK_IO_MOUNT_POINTS": "/mnt"
}
}
}
Environment attribute enrichments
In addition to tags, VM watch also checks the eligibility of the signals before execution. The environmentAttributes
can be specified to help VM watch determine the eligibility of each signal for execution.
For instance, if outbound traffic has been disabled on a VM, this information can be provided to VM watch. This ensures that any outbound network-related signal execution will be marked as ineligible.
{
"vmWatchSettings": {
"enabled": true,
"environmentAttributes": {
"OutboundConnectivityDisabled": true
}
}
}