如何通过 az cli 在 TrafficManager 上设置 属性 预期状态代码范围

How to set the property expected status code range on a TrafficManager via the az cli

我无法通过 az cli 为流量管理器配置文件设置预期的代码范围。

我收到错误:

无法构建模型:无法反序列化为 [MonitorConfigExpectedStatusCodeRangesItem] 类型的对象,DeserializationError:无法反序列化为 [MonitorConfigExpectedStatusCodeRangesItem] 类型的对象
追溯(最近一次通话):
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 573 行,在正文中
    数据 = deserializer._deserialize(data_type, 数据)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1260 行,在 _deserialize 中
    self._deserialize(local_type, 值)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1260 行,在 _deserialize 中
    self._deserialize(local_type, 值)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1269 行,在 _deserialize 中
    return self.deserialize_data(数据,响应)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1445 行,在 deserialize_data 中
    returnself.deserialize_type[iter_type](数据,data_type[1:-1])
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1474 行,在 deserialize_iter 中
    类型(属性)
msrest.exceptions.DeserializationError: 无法反序列化为 [MonitorConfigExpectedStatusCodeRangesItem] 类型的对象

在处理上述异常的过程中,又出现了一个异常:

追溯(最近一次通话):
  文件“/opt/az/lib/python3.6/site-packages/knack/cli.py”,第 197 行,在调用中
    cmd_result = self.invocation.execute(参数)
  文件“/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/__init__.py”,第 373 行,在执行中
    six.reraise(*sys.exc_info())
  文件“/opt/az/lib/python3.6/site-packages/six.py”,第 693 行,重新加注
    提升价值
  文件“/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/__init__.py”,第 347 行,在执行中
    结果 = cmd(参数)
  文件“/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/__init__.py”,第 182 行,在 __call__ 中
    return self.handler(*args, **kwargs)
  文件“/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/arm.py”,第 512 行,在处理程序中
    结果 = setter(**setterargs)
  文件“/opt/az/lib/python3.6/site-packages/azure/mgmt/trafficmanager/operations/profiles_operations.py”,第 347 行,在 create_or_update 中
    body_content = self._serialize.body(参数, 'Profile')
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 576 行,在正文中
    SerializationError, "Unable to build a model: "+str(错误), 错误)
  文件“/opt/az/lib/python3.6/site-packages/msrest/exceptions.py”,第 54 行,在 raise_with_traceback 中
    提高 error.with_traceback(exc_traceback)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 573 行,在正文中
    数据 = deserializer._deserialize(data_type, 数据)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1260 行,在 _deserialize 中
    self._deserialize(local_type, 值)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1260 行,在 _deserialize 中
    self._deserialize(local_type, 值)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1269 行,在 _deserialize 中
    return self.deserialize_data(数据,响应)
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1445 行,在 deserialize_data 中
    returnself.deserialize_type[iter_type](数据,data_type[1:-1])
  文件“/opt/az/lib/python3.6/site-packages/msrest/serialization.py”,第 1474 行,在 deserialize_iter 中
    类型(属性)
msrest.exceptions.SerializationError:无法构建模型:无法反序列化为 [MonitorConfigExpectedStatusCodeRangesItem] 类型的对象,DeserializationError:无法反序列化为 [MonitorConfigExpectedStatusCodeRangesItem] 类型的对象

我已经在 Azure 中设置了一个 TrafficManager 配置文件,现在我想用预期的状态代码范围更新该配置文件。这在创建过程中无法设置。

我使用的命令是:

az 网络流量管理器配置文件更新 --resource-group RG20BRAM-DEV --name test --set monitorConfig.expectedStatusCodeRanges='200'

谁能告诉我我做错了什么?

谨致问候, 布拉姆

您可以使用 CLI 命令更新 Azure 流量管理器配置文件,如下所示:

az network traffic-manager profile update -g groupName -n trafficName --set monitorConfig.expectedStatusCodeRanges[0].max=301

az network traffic-manager profile update -g groupName -n trafficName --set monitorConfig.expectedStatusCodeRanges[0].min=301

看看Traffic Manager的属性,然后选择你想用正确的方式更新哪一个。希望对您有所帮助。

更新

更新截图:

创建配置文件时未设置 属性 monitorConfig.expectedStatusCodeRanges。您可以先使用 CLI 命令设置它:

az network traffic-manager profile update -g charles -n charlesTrafficManager --set monitorConfig.expectedStatusCodeRanges='[{"min":200,"max":299}]'

命令执行截图: