簡體   English   中英

已發布 Azure Function 不會觸發服務總線消息

[英]Published Azure Function doesnt trigger on Service bus message

我在發布(來自 VS 代碼)Azure Function 時遇到問題,它應該在將消息添加到隊列時觸發,不幸的是,添加消息后什么也沒有發生,function 執行計數始終為 0,日志為空。 一切都在本地工作,我真的不知道如何才能完成這項工作。

配置變量被填充,包含:

在此處輸入圖像描述

這是我的 yaml 文件:

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

- task: AzureAppServiceSettings@1
  displayName: Update App Service Settings
  inputs:
    ConnectedServiceName: $(ServiceConnection)
    resourceGroupName: $(ResourceGroup)
    appName: $(WebApp)
    slotName: 'production'
    appSettings: |
      [
        {
          "name": "Values:test",
          "value": "$(test)",
          "slotSetting": false
        }
     ]
- task: AzureAppServiceSettings@1
  displayName: Update Azure Function Settings
  inputs:
    azureSubscription: $(ServiceConnection)
    resourceGroupName: $(ResourceGroup)
    appName: $(FunctionApp)
    slotName: 'production'
    appSettings: |
      [
        {
          "name": "test2",
          "value": "$(test2)",
          "slotSetting": false
        }
      ]
- task: AzureRmWebAppDeployment@4
  inputs:
    ConnectionType: 'AzureRM'
    azureSubscription: $(ServiceConnection)
    appType: 'webApp'
    WebAppName: $(WebApp)
    deployToSlotOrASE: true
    ResourceGroupName: $(ResourceGroup)
    SlotName: 'production'
    packageForLinux: '$(Build.ArtifactStagingDirectory)/**/*.zip'

- task: AzureRmWebAppDeployment@4
  displayName: Deploy to FunctionApp
  inputs:
    ConnectionType: "AzureRM"
    azureSubscription: $(ServiceConnection)
    appType: 'functionApp'
    WebAppName: $(FunctionApp)
    deployToSlotOrASE: true
    ResourceGroupName: $(ResourceGroup)
    SlotName: 'production'
    packageForLinux: '$(Build.ArtifactStagingDirectory)/**/*.zip'

Function 代碼:

        [FunctionName(TopicBeginFunction)]
        public async Task ConsumeStatusMessageFromQueue(
           [ServiceBusTrigger("%TopicBegin%", "%SubscriptionBegin%", Connection = "ServiceBusConnectionString")]
        Message topicMessage, CancellationToken cancellationToken, ILogger logger)
        {
            logger.LogInformation("Started");
            try
            {

預先感謝您的幫助!

感謝@Krzysztof的寶貴建議,感謝您解決上述問題,因為您已確認將解決方法發布為答案,以幫助其他社區成員解決類似問題。

  • WEBSITE_RUN_FROM_PACKAGE添加到0而不是使用1后,問題就解決了。

請參考以下鏈接了解類似問題:-

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM