Azure / Azure/azure-cli-extensions
`az monitor data-collection rule update` fails updating stream declaration
- Dominant language
- Python
- Stars
- 454
- Forks
- 1.7k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 64
Description
### Describe the bug
Updating an existing data collection rule is not working.
```sh
az monitor data-collection rule update --resource-group my-rg --name my-dcr --stream-declarations "columns[{location:string}]"
```
error:
`argument: Model 'AAZObjectArg' has no field named 'location' `
```sh
az monitor data-collection rule update --resource-group my-rg --name my-dcr --stream-declarations "columns=[{'location':'string'}]"
```
error:
`Failed to parse '--stream-declarations' argument: dict type value expected, got '[OrderedDict([('location', 'string')])]'()`
### Related command
az monitor data-collection rule update --resource-group my-rg --name my-dcr --stream-declarations "columns[{location:string}]"
### Errors
`Failed to parse '--stream-declarations' argument: dict type value expected, got '[OrderedDict([('location', 'string')])]'(, , ]
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableCreate []
cli.azure.cli.core: Modules found from index for 'monitor': ['azure.cli.command_modules.monitor', 'azext_applicationinsights', 'azext_
amcs']
cli.azure.cli.core: Loading command modules:
cli.azure.cli.core: Name Load Time Groups Commands
cli.azure.cli.core: monitor 0.659 22 65
cli.azure.cli.core: Total (1) 0.659 22 65
cli.azure.cli.core: These extensions are not installed and will be skipped: ['azext_ai_examples', 'azext_next']
cli.azure.cli.core: Loading extensions:
cli.azure.cli.core: Name Load Time Groups Commands Directory
cli.azure.cli.core: application-insights 0.011 10 30 C:\Users\user\.azure\cliextensions\application-insigh
ts
cli.azure.cli.core: monitor-control-service 0.041 10 30 C:\Users\user\.azure\cliextensions\monitor-control
-service
cli.azure.cli.core: Total (2) 0.052 20 60
cli.azure.cli.core: Loaded 40 groups, 125 commands.
cli.azure.cli.core: Found a match in the command table.
cli.azure.cli.core: Raw command : monitor data-collection rule update
cli.azure.cli.core: Command table: monitor data-collection rule update
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableTruncate []
cli.azure.cli.core.azlogging: metadata file logging enabled - writing logs to 'C:\Users\user\.azure\commands\2024-06-25.13-28-
42.monitor_data-collection_rule_update.34000.log'.
az_command_data_logger: command args: monitor data-collection rule update --debug --resource-group {} --name {} --stream-declarations
{}
cli.knack.cli: Event: CommandInvoker.OnPreArgumentLoad [.add_subscription_para
meter at 0x0394C348>]
cli.knack.cli: Event: CommandInvoker.OnPostArgumentLoad []
cli.knack.cli: Event: CommandInvoker.OnPostCommandTableCreate [.add_ids_arguments at 0x0394C43
8>, .add_cache_arguments at 0x0395D618>]
cli.knack.cli: Event: CommandInvoker.OnCommandTableLoaded []
cli.knack.cli: Event: CommandInvoker.OnPreParseArgs []
cli.azure.cli.core.azclierror: Traceback (most recent call last):
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/aaz/_arg_action.py", line 89, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/aaz/_arg_action.py", line 189, in setup_op
erations
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/aaz/_arg_action.py", line 296, in format_d
ata
azure.cli.core.aaz.exceptions.AAZInvalidValueError: dict type value expected, got '[OrderedDict([('location', 'string')])]'()
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 589, in execut
e
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/parser.py", line 261, in parse_args
File "argparse.py", line 1869, in parse_args
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/parser.py", line 281, in parse_known_args
File "argparse.py", line 1902, in parse_known_args
File "argparse.py", line 2096, in _parse_known_args
File "argparse.py", line 2073, in consume_positionals
File "argparse.py", line 1978, in take_action
File "argparse.py", line 1241, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/parser.py", line 281, in parse_known_args
File "argparse.py", line 1902, in parse_known_args
File "argparse.py", line 2096, in _parse_known_args
File "argparse.py", line 2073, in consume_positionals
File "argparse.py", line 1978, in take_action
File "argparse.py", line 1241, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/parser.py", line 281, in parse_known_args
File "argparse.py", line 1902, in parse_known_args
File "argparse.py", line 2096, in _parse_known_args
File "argparse.py", line 2073, in consume_positionals
File "argparse.py", line 1978, in take_action
File "argparse.py", line 1241, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/parser.py", line 281, in parse_known_args
File "argparse.py", line 1902, in parse_known_args
File "argparse.py", line 2096, in _parse_known_args
File "argparse.py", line 2073, in consume_positionals
File "argparse.py", line 1978, in take_action
File "argparse.py", line 1241, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/parser.py", line 281, in parse_known_args
File "argparse.py", line 1902, in parse_known_args
File "argparse.py", line 2114, in _parse_known_args
File "argparse.py", line 2054, in consume_optional
File "argparse.py", line 1978, in take_action
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/aaz/_arg_action.py", line 95, in __call__
azure.cli.core.azclierror.InvalidArgumentValueError: Failed to parse '--stream-declarations' argument: dict type value expected, got '
[OrderedDict([('location', 'string')])]'()
cli.azure.cli.core.azclierror: Failed to parse '--stream-declarations' argument: dict type value expected, got '[OrderedDict([('locati
on', 'string')])]'()
az_command_data_logger: Failed to parse '--stream-declarations' argument: dict type value expected, got '[OrderedDict([('location', 's
tring')])]'()
cli.knack.cli: Event: Cli.PostExecute []
az_command_data_logger: exit code: 1
cli.__main__: Command ran in 1.457 seconds (init: 0.621, invoke: 0.837)
```
### Expected behavior
```
"resourceGroup": "my-rg",
"streamDeclarations": {
"Custom-mytable_CL": {
"columns": [
{
"name": "TimeGenerated",
"type": "datetime"
},
{
"name": "location",
"type": "string"
},
{
"name": "properties",
"type": "dynamic"
}
]
}
},
```
### Environment Summary
```
{
"azure-cli": "2.61.0",
"azure-cli-core": "2.61.0",
"azure-cli-telemetry": "1.1.0",
"extensions": {
"account": "0.2.3",
"application-insights": "0.1.19",
"azure-devops": "0.26.0",
"datafactory": "0.6.0",
"kusto": "0.5.0",
"monitor-control-service": "1.1.0"
}
}
```
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.