Skip to content

Commit aa75ac8

Browse files
committed
addressing comments
1 parent 5c54b23 commit aa75ac8

File tree

2 files changed

+26
-43
lines changed

2 files changed

+26
-43
lines changed

src/containerapp/azext_containerapp/_utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -870,7 +870,7 @@ def get_random_replica(cmd, resource_group_name, container_app_name, revision_na
870870
container_app_name,
871871
revision_name
872872
)
873-
if min_replicas is not None and min_replicas == 0:
873+
if min_replicas is None or min_replicas == 0:
874874
logger.debug(f"The revision '{revision_name}' has minReplicas set to 0.")
875875
raise CLIError(f"The revision '{revision_name}' has minReplicas set to 0. Ensure that there is at least one replica. To update minimum replica: Run 'az containerapp update --name {container_app_name} --resource-group {resource_group_name} --min-replica 1'")
876876

src/containerapp/azext_containerapp/containerapp_functions_decorator.py

Lines changed: 25 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -274,24 +274,17 @@ def get_summary(self):
274274
# Fetch the app insights resource app id
275275
app_id = self._get_app_insights_id(resource_group_name, container_app_name, revision_name)
276276

277-
# Build query based on active revision mode
278-
if self.active_revision_mode.lower() == "single":
279-
invocation_summary_query = (
280-
f"requests | extend functionNameFromCustomDimension = tostring(customDimensions['faas.name']) "
281-
f"| where timestamp >= ago({timespan}) "
282-
f"| where cloud_RoleName =~ '{container_app_name}' "
283-
f"| where operation_Name =~ '{function_name}' or functionNameFromCustomDimension =~ '{function_name}' "
284-
f"| summarize SuccessCount = coalesce(countif(success == true), 0), ErrorCount = coalesce(countif(success == false), 0)"
285-
)
286-
else:
287-
invocation_summary_query = (
288-
f"requests | extend functionNameFromCustomDimension = tostring(customDimensions['faas.name']) "
289-
f"| where timestamp >= ago({timespan}) "
290-
f"| where cloud_RoleName =~ '{container_app_name}' "
291-
f"| where cloud_RoleInstance contains '{revision_name}' "
292-
f"| where operation_Name =~ '{function_name}' or functionNameFromCustomDimension =~ '{function_name}' "
293-
f"| summarize SuccessCount = coalesce(countif(success == true), 0), ErrorCount = coalesce(countif(success == false), 0)"
294-
)
277+
# Set revision_name to empty string for single mode, keep it for multiple mode
278+
revision_name = "" if self.active_revision_mode.lower() == "single" else revision_name
279+
280+
invocation_summary_query = (
281+
f"requests | extend functionNameFromCustomDimension = tostring(customDimensions['faas.name']) "
282+
f"| where timestamp >= ago({timespan}) "
283+
f"| where cloud_RoleName =~ '{container_app_name}' "
284+
f"| where isempty(\"{revision_name}\") or cloud_RoleInstance contains '{revision_name}' "
285+
f"| where operation_Name =~ '{function_name}' or functionNameFromCustomDimension =~ '{function_name}' "
286+
f"| summarize SuccessCount = coalesce(countif(success == true), 0), ErrorCount = coalesce(countif(success == false), 0)"
287+
)
295288

296289
result = self._execute_app_insights_query(app_id, invocation_summary_query, "getLast30DaySummary")
297290

@@ -315,30 +308,20 @@ def get_traces(self):
315308
# Fetch the app insights resource app id
316309
app_id = self._get_app_insights_id(resource_group_name, container_app_name, revision_name)
317310

318-
# Build query based on active revision mode
319-
if self.active_revision_mode.lower() == "single":
320-
invocation_traces_query = (
321-
f"requests | extend functionNameFromCustomDimension = tostring(customDimensions['faas.name']) "
322-
f"| project timestamp, id, operation_Name, success, resultCode, duration, operation_Id, functionNameFromCustomDimension, "
323-
f"cloud_RoleName, cloud_RoleInstance, invocationId=coalesce(tostring(customDimensions['InvocationId']), tostring(customDimensions['faas.invocation_id'])) "
324-
f"| where timestamp > ago({timespan}) "
325-
f"| where cloud_RoleName =~ '{container_app_name}' "
326-
f"| where operation_Name =~ '{function_name}' or functionNameFromCustomDimension =~ '{function_name}' "
327-
f"| order by timestamp desc | take {limit} "
328-
f"| project timestamp, success, resultCode, durationInMilliSeconds=duration, invocationId, operationId=operation_Id, operationName=operation_Name, functionNameFromCustomDimension "
329-
)
330-
else:
331-
invocation_traces_query = (
332-
f"requests | extend functionNameFromCustomDimension = tostring(customDimensions['faas.name']) "
333-
f"| project timestamp, id, operation_Name, success, resultCode, duration, operation_Id, functionNameFromCustomDimension, "
334-
f"cloud_RoleName, cloud_RoleInstance, invocationId=coalesce(tostring(customDimensions['InvocationId']), tostring(customDimensions['faas.invocation_id'])) "
335-
f"| where timestamp > ago({timespan}) "
336-
f"| where cloud_RoleName =~ '{container_app_name}' "
337-
f"| where cloud_RoleInstance contains '{revision_name}' "
338-
f"| where operation_Name =~ '{function_name}' or functionNameFromCustomDimension =~ '{function_name}' "
339-
f"| order by timestamp desc | take {limit} "
340-
f"| project timestamp, success, resultCode, durationInMilliSeconds=duration, invocationId, operationId=operation_Id, operationName=operation_Name, functionNameFromCustomDimension "
341-
)
311+
# Set revision_name to empty string for single mode, keep it for multiple mode
312+
revision_name = "" if self.active_revision_mode.lower() == "single" else revision_name
313+
314+
invocation_traces_query = (
315+
f"requests | extend functionNameFromCustomDimension = tostring(customDimensions['faas.name']) "
316+
f"| project timestamp, id, operation_Name, success, resultCode, duration, operation_Id, functionNameFromCustomDimension, "
317+
f"cloud_RoleName, cloud_RoleInstance, invocationId=coalesce(tostring(customDimensions['InvocationId']), tostring(customDimensions['faas.invocation_id'])) "
318+
f"| where timestamp > ago({timespan}) "
319+
f"| where cloud_RoleName =~ '{container_app_name}' "
320+
f"| where isempty(\"{revision_name}\") or cloud_RoleInstance contains '{revision_name}' "
321+
f"| where operation_Name =~ '{function_name}' or functionNameFromCustomDimension =~ '{function_name}' "
322+
f"| order by timestamp desc | take {limit} "
323+
f"| project timestamp, success, resultCode, durationInMilliSeconds=duration, invocationId, operationId=operation_Id, operationName=operation_Name, functionNameFromCustomDimension "
324+
)
342325

343326
result = self._execute_app_insights_query(app_id, invocation_traces_query, "getInvocationTraces")
344327

0 commit comments

Comments
 (0)