|
176 | 176 | validate_assign_kubelet_identity, |
177 | 177 | validate_azure_keyvault_kms_key_id, |
178 | 178 | validate_azure_keyvault_kms_key_vault_resource_id, |
| 179 | + validate_azure_monitor_and_opentelemetry_for_create, |
| 180 | + validate_azure_monitor_and_opentelemetry_for_update, |
| 181 | + validate_azure_monitor_logs_and_enable_addons, |
| 182 | + validate_azure_monitor_logs_enable_disable, |
179 | 183 | validate_azuremonitorworkspaceresourceid, |
180 | 184 | validate_cluster_id, |
181 | 185 | validate_cluster_snapshot_id, |
@@ -749,6 +753,12 @@ def load_arguments(self, _): |
749 | 753 | options_list=["--enable-addons", "-a"], |
750 | 754 | validator=validate_addons, |
751 | 755 | ) |
| 756 | + c.argument( |
| 757 | + "enable_azure_monitor_logs", |
| 758 | + action="store_true", |
| 759 | + validator=validate_azure_monitor_logs_and_enable_addons, |
| 760 | + help="Enable Azure Monitor logs for the cluster. Equivalent to '--enable-addons monitoring'." |
| 761 | + ) |
752 | 762 | c.argument("workspace_resource_id") |
753 | 763 | c.argument( |
754 | 764 | "enable_msi_auth_for_monitoring", |
@@ -1028,9 +1038,50 @@ def load_arguments(self, _): |
1028 | 1038 | c.argument("ksm_metric_annotations_allow_list") |
1029 | 1039 | c.argument("grafana_resource_id", validator=validate_grafanaresourceid) |
1030 | 1040 | c.argument("enable_windows_recording_rules", action="store_true") |
1031 | | - c.argument("enable_azure_monitor_app_monitoring", is_preview=True, action="store_true") |
1032 | | - c.argument("enable_cost_analysis", action="store_true") |
1033 | | - c.argument('enable_ai_toolchain_operator', is_preview=True, action='store_true') |
| 1041 | + c.argument("enable_azure_monitor_app_monitoring", |
| 1042 | + is_preview=True, |
| 1043 | + action="store_true" |
| 1044 | + ) |
| 1045 | + # OpenTelemetry parameters |
| 1046 | + c.argument("enable_opentelemetry_metrics", |
| 1047 | + is_preview=True, |
| 1048 | + action="store_true", |
| 1049 | + help="Enable OpenTelemetry metrics collection", |
| 1050 | + validator=validate_azure_monitor_and_opentelemetry_for_create |
| 1051 | + ) |
| 1052 | + c.argument("opentelemetry_metrics_port", |
| 1053 | + is_preview=True, |
| 1054 | + type=int, |
| 1055 | + help="Port for OpenTelemetry metrics collection" |
| 1056 | + ) |
| 1057 | + c.argument("disable_opentelemetry_metrics", |
| 1058 | + is_preview=True, |
| 1059 | + action="store_true", |
| 1060 | + help="Disable OpenTelemetry metrics collection" |
| 1061 | + ) |
| 1062 | + c.argument("enable_opentelemetry_logs", |
| 1063 | + options_list=["--enable-opentelemetry-logs"], |
| 1064 | + is_preview=True, |
| 1065 | + action="store_true", |
| 1066 | + help="Enable OpenTelemetry logs collection" |
| 1067 | + ) |
| 1068 | + c.argument("opentelemetry_logs_port", |
| 1069 | + is_preview=True, |
| 1070 | + type=int, |
| 1071 | + help="Port for OpenTelemetry logs collection" |
| 1072 | + ) |
| 1073 | + c.argument("disable_opentelemetry_logs", |
| 1074 | + is_preview=True, |
| 1075 | + action="store_true", |
| 1076 | + help="Disable OpenTelemetry logs collection" |
| 1077 | + ) |
| 1078 | + c.argument("enable_cost_analysis", |
| 1079 | + action="store_true" |
| 1080 | + ) |
| 1081 | + c.argument("enable_ai_toolchain_operator", |
| 1082 | + is_preview=True, |
| 1083 | + action="store_true" |
| 1084 | + ) |
1034 | 1085 | # azure container storage |
1035 | 1086 | c.argument( |
1036 | 1087 | "enable_azure_container_storage", |
@@ -1281,6 +1332,18 @@ def load_arguments(self, _): |
1281 | 1332 | is_preview=True, |
1282 | 1333 | ) |
1283 | 1334 | # addons |
| 1335 | + c.argument( |
| 1336 | + "enable_azure_monitor_logs", |
| 1337 | + action="store_true", |
| 1338 | + validator=validate_azure_monitor_logs_enable_disable, |
| 1339 | + help="Enable Azure Monitor logs for the cluster. Equivalent to 'az aks enable-addons -a monitoring'." |
| 1340 | + ) |
| 1341 | +# Monitoring parameters are inherited from base CLI |
| 1342 | + c.argument( |
| 1343 | + "disable_azure_monitor_logs", |
| 1344 | + action="store_true", |
| 1345 | + help="Disable Azure Monitor logs for the cluster. Equivalent to 'az aks disable-addons -a monitoring'." |
| 1346 | + ) |
1284 | 1347 | c.argument("enable_secret_rotation", action="store_true") |
1285 | 1348 | c.argument("disable_secret_rotation", action="store_true") |
1286 | 1349 | c.argument("rotation_poll_interval") |
@@ -1407,9 +1470,69 @@ def load_arguments(self, _): |
1407 | 1470 | hide=True, |
1408 | 1471 | ), |
1409 | 1472 | ) |
1410 | | - c.argument("disable_azure_monitor_metrics", action="store_true") |
1411 | | - c.argument("enable_azure_monitor_app_monitoring", action="store_true", is_preview=True) |
1412 | | - c.argument("disable_azure_monitor_app_monitoring", action="store_true", is_preview=True) |
| 1473 | + c.argument("enable_azure_monitor_app_monitoring", |
| 1474 | + action="store_true", |
| 1475 | + is_preview=True |
| 1476 | + ) |
| 1477 | + c.argument("disable_azure_monitor_app_monitoring", |
| 1478 | + action="store_true", |
| 1479 | + is_preview=True |
| 1480 | + ) |
| 1481 | + # Azure Monitor logs additional parameters |
| 1482 | + c.argument("workspace_resource_id", |
| 1483 | + help="Resource ID of the Azure Log Analytics workspace to use for monitoring") |
| 1484 | + c.argument( |
| 1485 | + "enable_msi_auth_for_monitoring", |
| 1486 | + arg_type=get_three_state_flag(), |
| 1487 | + is_preview=True, |
| 1488 | + help="Enable managed identity authentication for Azure Monitor logs" |
| 1489 | + ) |
| 1490 | + c.argument("enable_syslog", |
| 1491 | + arg_type=get_three_state_flag(), |
| 1492 | + is_preview=True, |
| 1493 | + help="Enable syslog collection for Azure Monitor logs") |
| 1494 | + c.argument("data_collection_settings", |
| 1495 | + is_preview=True, |
| 1496 | + help="Data collection settings for Azure Monitor logs") |
| 1497 | + c.argument("enable_high_log_scale_mode", |
| 1498 | + arg_type=get_three_state_flag(), |
| 1499 | + is_preview=True, |
| 1500 | + help="Enable high log scale mode for Azure Monitor logs") |
| 1501 | + c.argument("ampls_resource_id", |
| 1502 | + is_preview=True, |
| 1503 | + help="Resource ID of the Azure Monitor Private Link Scope to associate with the cluster") |
| 1504 | + # OpenTelemetry parameters |
| 1505 | + c.argument("enable_opentelemetry_metrics", |
| 1506 | + is_preview=True, |
| 1507 | + action="store_true", |
| 1508 | + help="Enable OpenTelemetry metrics collection", |
| 1509 | + validator=validate_azure_monitor_and_opentelemetry_for_update |
| 1510 | + ) |
| 1511 | + c.argument("opentelemetry_metrics_port", |
| 1512 | + is_preview=True, |
| 1513 | + type=int, |
| 1514 | + help="Port for OpenTelemetry metrics collection" |
| 1515 | + ) |
| 1516 | + c.argument("disable_opentelemetry_metrics", |
| 1517 | + is_preview=True, |
| 1518 | + action="store_true", |
| 1519 | + help="Disable OpenTelemetry metrics collection" |
| 1520 | + ) |
| 1521 | + c.argument("enable_opentelemetry_logs", |
| 1522 | + is_preview=True, |
| 1523 | + action="store_true", |
| 1524 | + help="Enable OpenTelemetry logs collection" |
| 1525 | + ) |
| 1526 | + c.argument("opentelemetry_logs_port", |
| 1527 | + is_preview=True, |
| 1528 | + type=int, |
| 1529 | + help="Port for OpenTelemetry logs collection" |
| 1530 | + ) |
| 1531 | + c.argument("disable_opentelemetry_logs", |
| 1532 | + is_preview=True, |
| 1533 | + action="store_true", |
| 1534 | + help="Disable OpenTelemetry logs collection" |
| 1535 | + ) |
1413 | 1536 | c.argument( |
1414 | 1537 | "enable_vpa", |
1415 | 1538 | action="store_true", |
|
0 commit comments