Javascript blobtrigger示例函数与StorageException崩溃

问题描述 投票:0回答:2

具有blobtriggered功能的全新JavaScript FunctionApp崩溃,错误500:

描述:由于未处理的异常,进程终止。异常信息:Microsoft.WindowsAzure.Storage.StorageException:指定的资源名称包含无效字符。 Microsoft.Azure.WebJobs.Host.Queues.Listeners.QueueListener.ExecuteAsync(CancellationToken)上的Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteAsyncInternal [T](RESTCommand`1 cmd,IRetryPolicy策略,OperationContext operationContext,CancellationToken令牌)在C:\ projects \ azure-webjobs-sdk-rqm4t \ src \ Microsoft.Azure.WebJobs.Extensions.Storage \ Queues \ Listeners \ QueueListener.cs中的cancellationToken:在Microsoft.Azure.WebJobs.Host.Timers.TaskSeriesTimer的第155行.RunAsync(CancellationToken cancellationToken)位于C:\ projects \ azure-webjobs-sdk-rqm4t \ src \ Microsoft.Azure.WebJobs.Host \ Timers \ TaskSeriesTimer.cs:第147行,位于Microsoft.Azure.WebJobs.Host.Timers.WebJobsExceptionHandler 。<> c__DisplayClass3_0。<OnUnhandledExceptionAsync> b__0()位于C:\ projects \ azure-webjobs-sdk-rqm4t \ src \ Microsoft.Azure.WebJobs.Host \ Timers \ WebJobsExceptionHandler.cs:System.Threading.Thread中的第54行。 System.Threadin的System.Threading.ThreadHelper.ThreadStart_Context(Object state)中的ThreadMain_ThreadStart() g.ExecutionContext.RunInternal(ExecutionContext executionContext,ContextCallback callback,Object state)---从抛出异常的上一个位置开始的堆栈跟踪---在System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext,ContextCallback callback,Object state)在System.Threading.ThreadHelper.ThreadStart()

步骤:我创建了一个新的FunctionApp:

  • 在javascript中
  • 在Windows服务计划上
  • 全新的存储/资源组

接下来,我导航到FunctionApp并创建了一个新函数:

  • 来自门户网站
  • 使用“Azure Blob存储触发器”模板(我安装了存储扩展)
  • 默认存储路径,var名称等

接下来,我在存储上创建了容器“samples-workitems”,并在其中放入一个文件来触发该函数,并从函数日志中获取错误消息。

我还尝试从门户右侧面板中使用值samples-workitems / {我复制的文件}“测试”该函数,我得到了500错误和前一条消息。

通过回到门户网站中的功能应用程序,我注意到了一些奇怪的事情:

enter image description here Azure存储扩展似乎已正确安装但如果我尝试添加新的blob触发功能,它再次要求我安装存储扩展...所以我想它永远不会成功安装扩展并且无法做到。

编辑:原来Azure现在承认扩展已安装,但我仍然有StorageException

azure azure-functions azure-storage-blobs
2个回答
0
投票

您可以从Kudu检查扩展是否成功安装。打开DebugConsole - >转到D:\ home \ site \ wwwroot \ bin。 Microsoft.Azure.WebJobs.Extensions.Storage.dll。如果存储dll不存在,则扩展安装不成功。


0
投票

您可以选择重新安装所需的扩展程序。你可以参考这个wiki:Update your app from portal

编辑extensions.csproj文件,在PackageReference中对ItemGroup项目进行必要的添加和更新,然后选择Save。关于支持的软件包版本可以在What NuGet packages do i need?中找到。

然后在wwwroot文件夹中运行以下命令来构建引用的程序集。

dotnet build extensions.csproj -o bin --no-incremental --packages D:\home\.nuget
© www.soinside.com 2019 - 2024. All rights reserved.