[英]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
后,問題就解決了。請參考以下鏈接了解類似問題:-
MS Q&A:- azure function 無法從服務總線接收消息
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.