标签: azure-functions-runtime

Azure功能绑定重定向

是否可以在azure函数文件夹结构中包含web.config或app.config文件以允许程序集绑定重定向?

c# assembly-binding-redirect azure-functions visual-studio-2017 azure-functions-runtime

23
推荐指数
4
解决办法
6660
查看次数

Azure功能无法绑定ILogger

我的函数是引用一个引用Microsoft.Extensions.Logging.Abstractions 2.0.0的程序集.如果我将该版本的nuget引用添加到函数的程序集中,则函数执行将失败:

[1/25/2018 11:14:46 PM] Microsoft.Azure.WebJobs.Host:错误索引方法'TrainingFunction.Run'.Microsoft.Azure.WebJobs.Host:无法将参数'log'绑定到类型ILogger.确保绑定支持参数Type.如果您正在使用绑定扩展(例如ServiceBus,Timers等),请确保您已在启动代码中调用扩展的注册方法(例如config.UseServiceBus(),config.UseTimers()等).

是否可以在Azure功能中使用较新的记录器?(SDK 1.0.7)

azure azure-functions azure-functions-runtime

19
推荐指数
2
解决办法
5804
查看次数

Azure Function出错:此平台不支持System.Drawing

(如果这个问题措辞不够,有人可以帮我清理一下吗?)

我有一个Azure功能(2.0),它依赖于一些System.Drawing代码.我添加了一个NuGet引用System.Drawing.Common(4.5.0).

但是,在发布应用程序后,调用该函数时,会产生错误:

System.Private.CoreLib:执行函数时出现异常:[MyFunctionName].System.Drawing.Common:此平台不支持System.Drawing.

据我所知,现在.NET Core支持System.Drawing.Common,我相信我的Azure功能正在运行的环境.但实际项目是.NET Standard 2.0项目.

我很困惑如何解决这个问题.我已经尝试将项目转换为.NET Core 2.1项目,但这导致了与"元数据生成失败"相关的奇怪错误,并且无法找到System.Runtime.

我的项目引用了Microsoft.Azure.WebJobs.Extensions.EventGrid(2.0.0-beta2),如果这是相关的.

azure .net-core azure-functions .net-standard azure-functions-runtime

16
推荐指数
2
解决办法
3947
查看次数

Azure Functions Portal错误 - 函数运行时无法启动

我使用VS 2017 Publish机制在消费计划中部署了VS 2017 C#开发的Azure功能应用程序.所有功能都是定时器或服务总线触发.我看到在Azure门户中运行的状态,并且功能似乎正在工作,例如将行写入SQL Azure数据库,但是,在尝试检查或监视功能时,我经常遇到Azure门户中的错误,例如红色错误框弹出错误:

The function runtime is unable to start. 
Session Id : xxxxxxxx
Timestamp : xxxxxxx
Run Code Online (Sandbox Code Playgroud)

我查看了日志,在日志文件中看不到任何明显的东西,我尝试部署到新的App Service并解决了一段时间的问题,但它已经回来了.我已将异常处理程序和异常消息中的所有函数包装到TraceWriter中,所有函数执行起来都非常快〜最多30-40秒.偶尔我也看到错误说"你没有权限xxx".

任何帮助非常感谢.

azure azureportal azure-functions azure-functions-runtime

14
推荐指数
1
解决办法
1491
查看次数

Azure功能很慢

我正在测试函数的CPU性能,所以我创建了一个函数,用于查找数字中的素数.它由Azure Service Bus触发.在我的本地机器上它运行350ms.

在消费计划中运行时,该功能大约需要1000毫秒.当我批量发送100条消息到函数时,它可以扩展到大约16个实例,但每个函数的性能大大降低到3000-7000ms之间.

在尝试使用4核的标准服务计划时,性能会更好,但不是那么多.它仍然比我的笔记本电脑慢得多.这家伙有类似的问题.

这是功能所期望的性能/扩展吗?Eq不适合批量处理CPU密集型方法?

Azure批次会更合适吗?

azure azure-functions azure-batch azure-functions-runtime

11
推荐指数
1
解决办法
2213
查看次数

如何将 Azure Functions v3 迁移到 .net core 5.0

我已将 Azure Function v3 项目中的所有程序集升级到版本 5.0,但我无法运行该函数。这是我函数的 csproj 文件的部分定义:

<PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <AzureFunctionsVersion>v3</AzureFunctionsVersion>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.Functions.Extensions" Version="1.1.0" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.Storage" Version="4.0.3" />
    <PackageReference Include="Microsoft.NET.Sdk.Functions" Version="3.0.11" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.SignalRService" Version="1.2.2" />
    <PackageReference Include="System.Net.Http" Version="4.3.4" />
  </ItemGroup>
Run Code Online (Sandbox Code Playgroud)

使用 .NET 5 实现此功能的必要解决方法是什么?谷歌没有得出任何结论。

更多信息:5.0.100 [C:\Program Files\dotnet\sdk]

这是我收到的错误消息之一:

无法加载文件或程序集“Microsoft.Extensions.Configuration.Abstractions,Version=5.0.0.0,Culture=neutral,PublicKeyToken=adb9793829ddae60”。该系统找不到指定的文件。

azure .net-core azure-functions azure-functions-runtime

10
推荐指数
2
解决办法
5114
查看次数

Azure Functions - 配置客户端证书身份验证

函数是否支持在消费计划中使用客户端证书授权访问函数?类似于此处描述的方法?基本上,如果调用方没有提供有效的客户端证书,我正在寻找函数运行时立即拒绝连接请求,而我不必在代码中实现该授权例程。

azure azure-functions azure-functions-runtime

9
推荐指数
2
解决办法
7882
查看次数

在 Azure Functions 中等待异步调用时,ConfigureAwait(false) 是否需要/有益

通常建议在ConfigureAwait(false)不需要上下文时等待异步调用时使用。只是想知道ConfigureAwait(false)在 Azure Functions中使用有什么好处。

Azure 函数线程是否具有非空值SynchronizationContext,因此使用ConfigureAwait(false)它可以避免不必要地捕获它并将等待继续重新安排回捕获的SynchronizationContext?

ConfigureAwait(false)在每次异步调用结束时添加有点麻烦,因此如果没有性能/或任何其他相关增益,则最好避免在 Azure Functions 中运行的代码中使用它。

查看azure函数主机代码:https : //github.com/Azure/azure-functions-host/blob/918b057707acfb842659c9dad3cef0193fae1330/src/WebJobs.Script.WebHost/WebScriptHostManager.cs#L181

似乎 azure 函数主机试图在调用 azure 函数之前去除 ASP.NET SynchronizationContext。

synchronizationcontext async-await azure-functions azure-functions-runtime azure-function-async

9
推荐指数
1
解决办法
1553
查看次数

Azure Function App VS 2019 .NET 3.0 中的错误 - 找不到方法:'IFunctionsHostBuilder.get_Services()'

Azure Functions/EFSQLSERVER .NET CORE 3.0 的问题:

重现:

  • 使用 Visual Studio 2019 16.2.1
  • 使用 Azure Function 模板创建项目。
  • 将目标框架更改为 .NET Core 3.0
  • 通过 Nuget 包管理器添加 Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0" 引用。
  • 使用 F5 执行函数应用程序

导致错误,如以下代码段所示。有人遇到过这个问题吗?

Azure Functions Core Tools (2.7.1633 Commit hash: 45c7d86a3bbc9ed0a80a8f4199aa7ea80ccfb24e)
Function Runtime Version: 2.0.12673.0
[10/4/2019 6:13:14 PM] Building host: startup suppressed:False, configuration suppressed: False
[10/4/2019 6:13:14 PM] Loading startup extension 'Startup'
[10/4/2019 6:13:14 PM] Loaded extension 'Startup' (1.0.0.0)
[10/4/2019 6:13:14 PM] Loading startup extension 'DurableTask'
[10/4/2019 6:13:14 PM] Loaded extension 'DurableTask' (1.0.0.0) …
Run Code Online (Sandbox Code Playgroud)

azure azure-functions-runtime .net-core-3.0 entity-framework-core-3.0

9
推荐指数
1
解决办法
6032
查看次数

Azure Functions 中令人费解的存储事务

我有一个项目,其中有几个按计划运行的基于 .NET Core 的 Azure Functions。其中一个每 10 分钟运行一次,用于更新视图计数,类似于 SO 跟踪问题视图的方式,另一个则每周发送一次电子邮件。这些功能运行良好一年左右。我最近将它们更新为使用 Azure Functions SDK v3 和 Azure Functions 运行时 v3 以及 .NET Core 3.1(基本上从 .NET Core 2.1 迁移到 .NET Core 3.1,因此我需要更新函数运行时)。

有一次我收到了一张比平常高得多的账单。事实证明,共享相同底层存储帐户的函数开始对存储进行大量 API 事务。每 5 分钟就有数千次。通常,每次运行都会生成大约 100 个存储事务(可能是检索函数文件?),但在某些时候事务会急剧增加。重新启动功能后,交易会降至正常,并且几天内一切正常,然后它们再次跳跃并保持高位,直到重新启动。

功能代码没有改变,仅升级了SDK和运行时。该函数代码通过 SDK 提供的记录器进行恒定数量的日志写入(例如 7),并且不以任何其他方式与存储交互。

我有两个相同的环境,一个用于测试,一个用于生产,并且都有相同的问题。该功能发生故障所需的时间间隔是几天,但每次似乎都不同。但是,如果我同时重新启动测试和生产,下一个峰值将在两个环境中同时发生,因此存在确定性。

根据我通过 Metrics 工具的调查,违规交易类型是 Create、Close 和 ChangeNotify,以及一些 Cancel(但少于其他)。该存储不用于其他任何用途(事实上,它的存在只是因为 Azure Functions 需要后备存储来存储其文件或其他内容)

这是相关的触发代码

[FunctionName("ViewCountUpdater")]
public static async Task RunAsync([TimerTrigger("0 */10 * * * *"/*, RunOnStartup = true*/)]TimerInfo timer, ILogger log, ExecutionContext context)
Run Code Online (Sandbox Code Playgroud)

我相信我遇到了 Azure Functions 运行时或 Azure Functions .NET Core …

azure .net-core azure-functions azure-functions-runtime

9
推荐指数
1
解决办法
347
查看次数