如何通过workflow_Id或端点URL获取Logic App的名称?
可行实现方法如下
先排查你之前Log Analytics查询无结果的原因
- 你的Logic App未开启诊断日志配置,没有把运行数据同步到对应的Log Analytics工作区
- 查询的时间范围小于Logic App的实际运行时间区间
- 填写的
workflowId_s字段值和实际ID不匹配
方法1:从端点URL提取workflow ID直接查询
Logic App的标准端点URL格式为:https://<区域前缀>.<区域>.logic.azure.com:443/workflows/<workflow ID>/triggers/<触发器名称>/paths/invoke?api-version=xxx
你可以直接从URL中提取/workflows/后到下一个/之前的字符串,即为该Logic App的workflow ID,拿到ID后可以通过三种方式查询名称:
- Azure Portal全局搜索:直接在Portal顶部的搜索框粘贴workflow ID,搜索结果会直接返回对应的Logic App资源,展示名称、资源组等信息
- Azure CLI查询:
如果你知道所属订阅ID,运行命令:
跨订阅全量搜索可以运行:az resource show --ids /subscriptions/<你的订阅ID>/providers/Microsoft.Logic/workflows/<提取到的workflow ID>az resource list --resource-type Microsoft.Logic/workflows --query "[?id contains '<提取到的workflow ID>'].[name,resourceGroup]" -o tsv - 修正Log Analytics查询语句:
确认已开启诊断日志后,使用如下语句查询:
如果你没有提取到workflow ID,也可以直接用URL片段模糊匹配:AzureDiagnostics | where ResourceType == "WORKFLOWS" | where workflowId_s == "<提取到的workflow ID>" | distinct 逻辑应用名称 = Resource, 资源组 = resourceGroup, 订阅ID = subscriptionIdAzureDiagnostics | where ResourceType == "WORKFLOWS" | where triggerCallbackUrl_s has "<你的URL中特有识别片段>" | distinct 逻辑应用名称 = Resource, 资源组 = resourceGroup, 订阅ID = subscriptionId, workflowId_s
方法2:通过Event Grid主题直接查询
你可以直接在对应Event Grid主题的控制台操作,无需解析URL:
- 进入Event Grid主题的详情页,左侧菜单选择「事件订阅」
- 找到绑定了Logic App的对应事件订阅,点击进入详情
- 端点详情字段会直接展示关联的Logic App名称和触发路径
内容的提问来源于stack exchange,提问作者suraj_123
相关产品推荐
相关产品推荐

