Skip to content

Introduce new parameters into az network watcher connection-monitor. Add new commands. #9432

@irrogozh

Description

@irrogozh

Resource Provider
Az.Network

Description of Feature or Work Requested
We are going to create a new version of connection monitor API. instead of single source/destination we are going to enable monitoring for multiple endpoints and configurations. Instead of current parameters, we will need to have a list of endpoints, testConfigurations, testGroups and outputs.

Looks like reasonable approach:

  1. create a shallow connection monitor resource:
    az network watcher connection-monitor create --name --notes

  2. add endpoint to connection monitor:
    az network watcher connection-monitor endpoint create --name --resourceId --address --filterType --filterAddresses

  3. add testConfiguration to connection monitor:
    az network watcher connection-monitor testConfiguration create --name --testFrequencySec -- successThresholdChecksFailedPercent --successThresholdRoundTripTimeMs --preferredIPVersion --protocolConfiguration

  4. add testGroup to connection monitor:
    az network watcher connection-monitor testGroup create --name --testConfigurations(list of test configuration names) --sources(list of source endpoint names) --destinations(list of destination endpoint names)

  5. add output to connectionMonitor:
    az network watcher connection-monitor output create --outputType --workspaceResourceId

  6. I'm not sure what's the best approach to set protocolConfiguration from item 3.
    For powershell we do it like this:

New-AzNetworkWatcherConnectionMonitorProtocolConfigurationObject -Protocol

[1st parameter set - if TCP protocol specified: [-Port] [-DisableTraceRoute]]
[2nd parameter set - if HTTP protocol specified: [-Port] [-Method] [-Path] [-RequestHeader] [-ValidStatusCodeRange<List[String]>] [-PreferHTTPS]]
[3nd parameter set - if ICMP protocol specified: [-DisableTraceRoute]]


  1. We also need to have some way to update connection monitor. If there is an option to delete endpoint, testConfiguration, testGroup and output from connectionMonitor, it could work. The challenge is that if customer remove endpoint but forget to remove this endpoint name from a testGroup which was referenced it, customer will have validation exception on server side. Probably, it's fine...

Minimum API Version Required
What is the minimum API version of your service required to implement your feature?

Swagger Link
Azure/azure-rest-api-specs#7821

it's not updated with new parameters yet

Target Date
We are going to have private preview at the second half of June.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions