You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Azure DevOps YAML增量部署后,Standard Logic App运行历史如何恢复?

关于Standard Logic App ARM部署与运行历史恢复的问题

我通过ARM模板部署Standard Logic App,使用以下两个Azure DevOps任务:

- task: AzureResourceManagerTemplateDeployment@3
  displayName: "Create Standard Logic Application"
  inputs:
    deploymentScope: 'Resource Group'
    azureResourceManagerConnection: $(TestSubscription)
    subscriptionId: $(IDTestSubscription)
    action: 'Create Or Update Resource Group'
    resourceGroupName: $(ResourceGroup)
    location: 'West Europe'
    templateLocation: 'Linked artifact'
    csmFile: '$(Pipeline.Workspace)/drop/armtemplates/logicapp_deployment.json'
    csmParametersFile: '$(Pipeline.Workspace)/drop/armtemplates/logicapp_parameters.json'
    deploymentMode: 'Incremental'
    deploymentOutputs: 'ArmOutputsLA'
  continueOnError: true

- task: AzureFunctionApp@2
  displayName: Deploy Logic App Workflows
  inputs:
    azureSubscription: $(IDTestSubscription)
    appType: functionapp 
    appName: $(LaAppName)
    package: '$(Pipeline.Workspace)/drop/workflow.zip'
    deploymentMethod: 'zipDeploy'
    ResourceGroupName: $(ResourceGroup)
  continueOnError: true

当前存在两个问题:

  1. Website_Rum_From_Package应用设置未被部署
  2. 增量部署完成后,如何恢复Standard Logic App的运行历史?

解决Website_Rum_From_Package未部署的问题

有两种可行方式:

  • 通过ARM模板添加配置:检查你的logicapp_deployment.json,确保包含应用设置的资源节点。Standard Logic App的应用设置需要定义在Microsoft.Web/sites/config类型的资源中,示例如下:
{
  "type": "Microsoft.Web/sites/config",
  "apiVersion": "2022-03-01",
  "name": "[concat(parameters('logicAppName'), '/appsettings')]",
  "dependsOn": ["[resourceId('Microsoft.Web/sites', parameters('logicAppName'))]"],
  "properties": {
    "Website_Rum_From_Package": "1" // 替换为你需要的实际值
  }
}

如果模板已有该配置,检查参数文件是否正确传递了对应值,或是否有条件判断逻辑导致该设置被跳过。

  • 通过AzureFunctionApp任务直接指定:在部署工作流的任务中,添加appSettings输入项直接设置该参数,示例修改后的任务:
- task: AzureFunctionApp@2
  displayName: Deploy Logic App Workflows
  inputs:
    azureSubscription: $(IDTestSubscription)
    appType: functionapp 
    appName: $(LaAppName)
    package: '$(Pipeline.Workspace)/drop/workflow.zip'
    deploymentMethod: 'zipDeploy'
    ResourceGroupName: $(ResourceGroup)
    appSettings: '-Website_Rum_From_Package "1"' // 新增应用设置配置
  continueOnError: true

增量部署后恢复运行历史的方法

Standard Logic App的运行历史默认存储在关联的存储账户(或指定的Cosmos DB)中,只要存储资源未被删除或替换,历史数据不会丢失。按以下步骤排查恢复:

  1. 确认存储资源是否未变更:
    进入Azure门户的Logic App页面,点击「配置」→「应用设置」,查看AzureWebJobsStorage(默认存储运行历史的存储账户)或WORKFLOWS_DOCUMENTDB_CONNECTION(使用Cosmos DB时)的值,确认是否与部署前一致。
  2. 若存储资源被修改:
    如果部署过程中更换了关联的存储账户/Cosmos DB,需要将Logic App重新关联回原存储资源——可以通过ARM模板更新对应应用设置,或在Azure门户手动修改配置。
  3. 检查配置是否被覆盖:
    对比部署前后的Logic App配置,查看是否有runtimeConfiguration等与运行历史相关的设置被修改,若有则恢复为部署前的状态。
  4. 确认保留期未过期:
    Logic App运行历史默认保留30天,若数据已超过保留期则无法恢复。

内容的提问来源于stack exchange,提问作者Sergio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 15:15:12