in src/monitor-control-service/azext_amcs/aaz/latest/monitor/data_collection/rule/_update.py [0:0]
def _update_instance(self, instance):
_instance_value, _builder = self.new_content_builder(
self.ctx.args,
value=instance,
typ=AAZObjectType
)
_builder.set_prop("identity", AAZObjectType, ".identity")
_builder.set_prop("kind", AAZStrType, ".kind")
_builder.set_prop("properties", AAZObjectType, typ_kwargs={"flags": {"client_flatten": True}})
_builder.set_prop("tags", AAZDictType, ".tags")
identity = _builder.get(".identity")
if identity is not None:
identity.set_prop("type", AAZStrType, ".type", typ_kwargs={"flags": {"required": True}})
identity.set_prop("userAssignedIdentities", AAZDictType, ".user_assigned_identities")
user_assigned_identities = _builder.get(".identity.userAssignedIdentities")
if user_assigned_identities is not None:
user_assigned_identities.set_elements(AAZObjectType, ".", typ_kwargs={"nullable": True})
properties = _builder.get(".properties")
if properties is not None:
properties.set_prop("agentSettings", AAZObjectType, ".agent_settings")
properties.set_prop("dataCollectionEndpointId", AAZStrType, ".data_collection_endpoint_id")
properties.set_prop("dataFlows", AAZListType, ".data_flows_raw")
properties.set_prop("dataSources", AAZObjectType, ".data_sources")
properties.set_prop("description", AAZStrType, ".description")
properties.set_prop("destinations", AAZObjectType, ".destinations")
properties.set_prop("references", AAZObjectType, ".references")
properties.set_prop("streamDeclarations", AAZDictType, ".stream_declarations")
agent_settings = _builder.get(".properties.agentSettings")
if agent_settings is not None:
agent_settings.set_prop("logs", AAZListType, ".logs")
logs = _builder.get(".properties.agentSettings.logs")
if logs is not None:
logs.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.agentSettings.logs[]")
if _elements is not None:
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("value", AAZStrType, ".value")
data_flows = _builder.get(".properties.dataFlows")
if data_flows is not None:
data_flows.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataFlows[]")
if _elements is not None:
_elements.set_prop("builtInTransform", AAZStrType, ".built_in_transform")
_elements.set_prop("captureOverflow", AAZBoolType, ".capture_overflow")
_elements.set_prop("destinations", AAZListType, ".destinations")
_elements.set_prop("outputStream", AAZStrType, ".output_stream")
_elements.set_prop("streams", AAZListType, ".streams")
_elements.set_prop("transformKql", AAZStrType, ".transform_kql")
destinations = _builder.get(".properties.dataFlows[].destinations")
if destinations is not None:
destinations.set_elements(AAZStrType, ".")
streams = _builder.get(".properties.dataFlows[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
data_sources = _builder.get(".properties.dataSources")
if data_sources is not None:
data_sources.set_prop("dataImports", AAZObjectType, ".data_imports")
data_sources.set_prop("extensions", AAZListType, ".extensions")
data_sources.set_prop("iisLogs", AAZListType, ".iis_logs")
data_sources.set_prop("logFiles", AAZListType, ".log_files")
data_sources.set_prop("performanceCounters", AAZListType, ".performance_counters")
data_sources.set_prop("platformTelemetry", AAZListType, ".platform_telemetry")
data_sources.set_prop("prometheusForwarder", AAZListType, ".prometheus_forwarder")
data_sources.set_prop("syslog", AAZListType, ".syslog")
data_sources.set_prop("windowsEventLogs", AAZListType, ".windows_event_logs")
data_sources.set_prop("windowsFirewallLogs", AAZListType, ".windows_firewall_logs")
data_imports = _builder.get(".properties.dataSources.dataImports")
if data_imports is not None:
data_imports.set_prop("eventHub", AAZObjectType, ".event_hub")
event_hub = _builder.get(".properties.dataSources.dataImports.eventHub")
if event_hub is not None:
event_hub.set_prop("consumerGroup", AAZStrType, ".consumer_group")
event_hub.set_prop("name", AAZStrType, ".name")
event_hub.set_prop("stream", AAZStrType, ".stream")
extensions = _builder.get(".properties.dataSources.extensions")
if extensions is not None:
extensions.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.extensions[]")
if _elements is not None:
_elements.set_prop("extensionName", AAZStrType, ".extension_name", typ_kwargs={"flags": {"required": True}})
_elements.set_prop("extensionSettings", AAZFreeFormDictType, ".extension_settings")
_elements.set_prop("inputDataSources", AAZListType, ".input_data_sources")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("streams", AAZListType, ".streams")
extension_settings = _builder.get(".properties.dataSources.extensions[].extensionSettings")
if extension_settings is not None:
extension_settings.set_anytype_elements(".")
input_data_sources = _builder.get(".properties.dataSources.extensions[].inputDataSources")
if input_data_sources is not None:
input_data_sources.set_elements(AAZStrType, ".")
streams = _builder.get(".properties.dataSources.extensions[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
iis_logs = _builder.get(".properties.dataSources.iisLogs")
if iis_logs is not None:
iis_logs.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.iisLogs[]")
if _elements is not None:
_elements.set_prop("logDirectories", AAZListType, ".log_directories")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("streams", AAZListType, ".streams", typ_kwargs={"flags": {"required": True}})
_elements.set_prop("transformKql", AAZStrType, ".transform_kql")
log_directories = _builder.get(".properties.dataSources.iisLogs[].logDirectories")
if log_directories is not None:
log_directories.set_elements(AAZStrType, ".")
streams = _builder.get(".properties.dataSources.iisLogs[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
log_files = _builder.get(".properties.dataSources.logFiles")
if log_files is not None:
log_files.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.logFiles[]")
if _elements is not None:
_elements.set_prop("filePatterns", AAZListType, ".file_patterns", typ_kwargs={"flags": {"required": True}})
_elements.set_prop("format", AAZStrType, ".format", typ_kwargs={"flags": {"required": True}})
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("settings", AAZObjectType, ".settings")
_elements.set_prop("streams", AAZListType, ".streams", typ_kwargs={"flags": {"required": True}})
_elements.set_prop("transformKql", AAZStrType, ".transform_kql")
file_patterns = _builder.get(".properties.dataSources.logFiles[].filePatterns")
if file_patterns is not None:
file_patterns.set_elements(AAZStrType, ".")
settings = _builder.get(".properties.dataSources.logFiles[].settings")
if settings is not None:
settings.set_prop("text", AAZObjectType, ".text")
text = _builder.get(".properties.dataSources.logFiles[].settings.text")
if text is not None:
text.set_prop("recordStartTimestampFormat", AAZStrType, ".record_start_timestamp_format", typ_kwargs={"flags": {"required": True}})
streams = _builder.get(".properties.dataSources.logFiles[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
performance_counters = _builder.get(".properties.dataSources.performanceCounters")
if performance_counters is not None:
performance_counters.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.performanceCounters[]")
if _elements is not None:
_elements.set_prop("counterSpecifiers", AAZListType, ".counter_specifiers")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("samplingFrequencyInSeconds", AAZIntType, ".sampling_frequency_in_seconds")
_elements.set_prop("streams", AAZListType, ".streams")
_elements.set_prop("transformKql", AAZStrType, ".transform_kql")
counter_specifiers = _builder.get(".properties.dataSources.performanceCounters[].counterSpecifiers")
if counter_specifiers is not None:
counter_specifiers.set_elements(AAZStrType, ".")
streams = _builder.get(".properties.dataSources.performanceCounters[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
platform_telemetry = _builder.get(".properties.dataSources.platformTelemetry")
if platform_telemetry is not None:
platform_telemetry.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.platformTelemetry[]")
if _elements is not None:
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("streams", AAZListType, ".streams", typ_kwargs={"flags": {"required": True}})
streams = _builder.get(".properties.dataSources.platformTelemetry[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
prometheus_forwarder = _builder.get(".properties.dataSources.prometheusForwarder")
if prometheus_forwarder is not None:
prometheus_forwarder.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.prometheusForwarder[]")
if _elements is not None:
_elements.set_prop("labelIncludeFilter", AAZDictType, ".label_include_filter")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("streams", AAZListType, ".streams")
label_include_filter = _builder.get(".properties.dataSources.prometheusForwarder[].labelIncludeFilter")
if label_include_filter is not None:
label_include_filter.set_elements(AAZStrType, ".")
streams = _builder.get(".properties.dataSources.prometheusForwarder[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
syslog = _builder.get(".properties.dataSources.syslog")
if syslog is not None:
syslog.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.syslog[]")
if _elements is not None:
_elements.set_prop("facilityNames", AAZListType, ".facility_names")
_elements.set_prop("logLevels", AAZListType, ".log_levels")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("streams", AAZListType, ".streams")
_elements.set_prop("transformKql", AAZStrType, ".transform_kql")
facility_names = _builder.get(".properties.dataSources.syslog[].facilityNames")
if facility_names is not None:
facility_names.set_elements(AAZStrType, ".")
log_levels = _builder.get(".properties.dataSources.syslog[].logLevels")
if log_levels is not None:
log_levels.set_elements(AAZStrType, ".")
streams = _builder.get(".properties.dataSources.syslog[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
windows_event_logs = _builder.get(".properties.dataSources.windowsEventLogs")
if windows_event_logs is not None:
windows_event_logs.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.windowsEventLogs[]")
if _elements is not None:
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("streams", AAZListType, ".streams")
_elements.set_prop("transformKql", AAZStrType, ".transform_kql")
_elements.set_prop("xPathQueries", AAZListType, ".x_path_queries")
streams = _builder.get(".properties.dataSources.windowsEventLogs[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
x_path_queries = _builder.get(".properties.dataSources.windowsEventLogs[].xPathQueries")
if x_path_queries is not None:
x_path_queries.set_elements(AAZStrType, ".")
windows_firewall_logs = _builder.get(".properties.dataSources.windowsFirewallLogs")
if windows_firewall_logs is not None:
windows_firewall_logs.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.dataSources.windowsFirewallLogs[]")
if _elements is not None:
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("profileFilter", AAZListType, ".profile_filter")
_elements.set_prop("streams", AAZListType, ".streams", typ_kwargs={"flags": {"required": True}})
profile_filter = _builder.get(".properties.dataSources.windowsFirewallLogs[].profileFilter")
if profile_filter is not None:
profile_filter.set_elements(AAZStrType, ".")
streams = _builder.get(".properties.dataSources.windowsFirewallLogs[].streams")
if streams is not None:
streams.set_elements(AAZStrType, ".")
destinations = _builder.get(".properties.destinations")
if destinations is not None:
destinations.set_prop("azureDataExplorer", AAZListType, ".azure_data_explorer")
destinations.set_prop("azureMonitorMetrics", AAZObjectType, ".azure_monitor_metrics")
destinations.set_prop("eventHubs", AAZListType, ".event_hubs")
destinations.set_prop("eventHubsDirect", AAZListType, ".event_hubs_direct")
destinations.set_prop("logAnalytics", AAZListType, ".log_analytics")
destinations.set_prop("microsoftFabric", AAZListType, ".microsoft_fabric")
destinations.set_prop("monitoringAccounts", AAZListType, ".monitoring_accounts")
destinations.set_prop("storageAccounts", AAZListType, ".storage_accounts")
destinations.set_prop("storageBlobsDirect", AAZListType, ".storage_blobs_direct")
destinations.set_prop("storageTablesDirect", AAZListType, ".storage_tables_direct")
azure_data_explorer = _builder.get(".properties.destinations.azureDataExplorer")
if azure_data_explorer is not None:
azure_data_explorer.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.destinations.azureDataExplorer[]")
if _elements is not None:
_elements.set_prop("databaseName", AAZStrType, ".database_name")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("resourceId", AAZStrType, ".resource_id")
azure_monitor_metrics = _builder.get(".properties.destinations.azureMonitorMetrics")
if azure_monitor_metrics is not None:
azure_monitor_metrics.set_prop("name", AAZStrType, ".name")
event_hubs = _builder.get(".properties.destinations.eventHubs")
if event_hubs is not None:
event_hubs.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.destinations.eventHubs[]")
if _elements is not None:
_elements.set_prop("eventHubResourceId", AAZStrType, ".event_hub_resource_id")
_elements.set_prop("name", AAZStrType, ".name")
event_hubs_direct = _builder.get(".properties.destinations.eventHubsDirect")
if event_hubs_direct is not None:
event_hubs_direct.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.destinations.eventHubsDirect[]")
if _elements is not None:
_elements.set_prop("eventHubResourceId", AAZStrType, ".event_hub_resource_id")
_elements.set_prop("name", AAZStrType, ".name")
log_analytics = _builder.get(".properties.destinations.logAnalytics")
if log_analytics is not None:
log_analytics.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.destinations.logAnalytics[]")
if _elements is not None:
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("workspaceResourceId", AAZStrType, ".workspace_resource_id")
microsoft_fabric = _builder.get(".properties.destinations.microsoftFabric")
if microsoft_fabric is not None:
microsoft_fabric.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.destinations.microsoftFabric[]")
if _elements is not None:
_elements.set_prop("artifactId", AAZStrType, ".artifact_id")
_elements.set_prop("databaseName", AAZStrType, ".database_name")
_elements.set_prop("ingestionUri", AAZStrType, ".ingestion_uri")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("tenantId", AAZStrType, ".tenant_id")
monitoring_accounts = _builder.get(".properties.destinations.monitoringAccounts")
if monitoring_accounts is not None:
monitoring_accounts.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.destinations.monitoringAccounts[]")
if _elements is not None:
_elements.set_prop("accountResourceId", AAZStrType, ".account_resource_id")
_elements.set_prop("name", AAZStrType, ".name")
storage_accounts = _builder.get(".properties.destinations.storageAccounts")
if storage_accounts is not None:
_UpdateHelper._build_schema_storage_blob_destination_update(storage_accounts.set_elements(AAZObjectType, "."))
storage_blobs_direct = _builder.get(".properties.destinations.storageBlobsDirect")
if storage_blobs_direct is not None:
_UpdateHelper._build_schema_storage_blob_destination_update(storage_blobs_direct.set_elements(AAZObjectType, "."))
storage_tables_direct = _builder.get(".properties.destinations.storageTablesDirect")
if storage_tables_direct is not None:
storage_tables_direct.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.destinations.storageTablesDirect[]")
if _elements is not None:
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("storageAccountResourceId", AAZStrType, ".storage_account_resource_id")
_elements.set_prop("tableName", AAZStrType, ".table_name")
references = _builder.get(".properties.references")
if references is not None:
references.set_prop("enrichmentData", AAZObjectType, ".enrichment_data")
enrichment_data = _builder.get(".properties.references.enrichmentData")
if enrichment_data is not None:
enrichment_data.set_prop("storageBlobs", AAZListType, ".storage_blobs")
storage_blobs = _builder.get(".properties.references.enrichmentData.storageBlobs")
if storage_blobs is not None:
storage_blobs.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.references.enrichmentData.storageBlobs[]")
if _elements is not None:
_elements.set_prop("blobUrl", AAZStrType, ".blob_url")
_elements.set_prop("lookupType", AAZStrType, ".lookup_type")
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("resourceId", AAZStrType, ".resource_id")
stream_declarations = _builder.get(".properties.streamDeclarations")
if stream_declarations is not None:
stream_declarations.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.streamDeclarations{}")
if _elements is not None:
_elements.set_prop("columns", AAZListType, ".columns")
columns = _builder.get(".properties.streamDeclarations{}.columns")
if columns is not None:
columns.set_elements(AAZObjectType, ".")
_elements = _builder.get(".properties.streamDeclarations{}.columns[]")
if _elements is not None:
_elements.set_prop("name", AAZStrType, ".name")
_elements.set_prop("type", AAZStrType, ".type")
tags = _builder.get(".tags")
if tags is not None:
tags.set_elements(AAZStrType, ".")
return _instance_value