标签: azure-functions

为什么 Azure SignalR 函数在本地主机测试上返回 CORS 错误

我正在尝试学习如何使用Azure functionSignalR创建无服务器设计。为此,我创建了以下类Azure function

    public static class NotifactionR
    {

        [FunctionName("negotiate")]
        public static SignalRConnectionInfo Negotiate(
            [HttpTrigger(AuthorizationLevel.Anonymous)]HttpRequest req,
            [SignalRConnectionInfo(HubName = "my-hub")]
            SignalRConnectionInfo connectionInfo)
        {
            // connectionInfo contains an access key token with a name identifier claim set to the authenticated user
            return connectionInfo;
        }

        [FunctionName("NotifactionR")]
        public static Task NotifactionR([EventGridTrigger]EventGridEvent eventGridEvent,
            [SignalR(HubName = "my-hub")]IAsyncCollector<SignalRMessage> signalRMessages,
            ILogger log)
        {
            log.LogInformation(eventGridEvent.Data.ToString());

            return signalRMessages.AddAsync(
                new SignalRMessage
                {
                    // the message will only be sent to these user IDs
                    UserId = "userId1", …
Run Code Online (Sandbox Code Playgroud)

azure signalr azure-functions azure-signalr

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

如何使用 Azure DevOps 管道变量配置 Azure Function?

我可以从 Microsoft Azure Functions 应用程序仪表板将环境变量注入 Azure Functions 应用程序:

Azure Functions 应用程序应用程序设置

使用System.Environment.GetEnvironmentVariable("AppName"),我可以检索配置的值:

[FunctionName("Status")]
public static async Task<IActionResult> Status(
    [HttpTrigger(AuthorizationLevel.Anonymous, "get")] HttpRequest req)
{
    var appName = System.Environment.GetEnvironmentVariable("AppName");

    return new OkObjectResult($"{appName} - OK");
}
Run Code Online (Sandbox Code Playgroud)

并且它可靠地返回: 邮递员结果

但我希望环境变量来自 Azure DevOps Pipeline Variables 作为发布管道的一部分,以便该值可以与特定版本、范围等相关联: Azure DevOps 管道变量

如何才能做到这一点?做到吗?

azure azure-devops azure-functions azure-pipelines

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

在Azure持久功能活动中使用ILogger?

我正在使用天蓝色函数作为表插入事件触发器,特别是持久函数,并且我试图在我的活动函数中生成一些日志。

问题是活动函数没有收到任何“ILogger”,编排器也没有收到任何“ILogger”,因此我没有任何访问权限,也无法生成用于调试的日志。

整体流程为:

HTTP 请求 => Duarble HTTP 启动器 => 持久功能协调器 =>持久功能活动

有没有办法为从 ILogger 派生的某些类创建记录器实例?或者也许是一种将 ILogger 实例从 HTTP 启动器传递到活动函数的方法?

任何解决方案将不胜感激!

c# cloud azure azure-devops azure-functions

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

在 Azure Function 中安装 Powershell 模块

我将 Azure Function 2.0 与 Powershell 结合使用,但在安装 Powershell 模块时出现以下错误。

有什么办法可以消除这个错误。一般来说,我们不需要管理员权限来安装 NuGet/依赖项。

我还尝试了另一种方法将所有 Powershell 模块放在 Modules 文件夹下 在此输入图像描述

尽管如此,函数仍无法找到 Cosmos DB 模块

在此输入图像描述

powershell azure azure-functions

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

Azure Function:内存不足,无法继续执行程序

尝试在本地运行 Azure Functions 项目并收到以下错误:

Insufficient memory to continue the execution of the program.
Run Code Online (Sandbox Code Playgroud)

这发生在记录或启动任何内容之前,因此无需调试。

有人知道如何调试这个吗?

我已经删除了所有代码,删除了所有依赖项。剩下的只是一个没有实现的默认计时器函数。它仍然不起作用。

如果我创建一个新的函数项目 func init,一切正常。我看不到不起作用的项目和起作用的项目之间的项目文件、host.json、local.settings.json、function.json 等有任何差异。

我正在考虑重新实现该项目并复制所有代码,但这是唯一的解决方案吗?

azure-functions azure-functions-runtime

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

如何使用逻辑应用程序与 Azure 函数来上传大文件的 Blob 存储中的文件

我需要使用逻辑应用将 Azure 文件存储中的一些 csv 文件加载到 blob 存储。在逻辑应用程序中使用什么触发器来访问 Azure 中的文件存储?

这些文件非常大,高达 1 GB,我希望能够将它们发送到 ftp 服务器或静态端点进行上传(使用示例 PUT 动词)。

逻辑应用程序是否能够执行此操作,或者使用 Azure 函数会更好吗?任何为我指明正确方向的资源或帮助都会很有用。

azure azure-logic-apps azure-functions

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

Http 触发器 Azure Function v2 (python) 按预期执行整个逻辑,但在 Web 请求 4 分钟后给出 504 网关超时

我创建了一个 Http 触发的 Python Azure 函数,根据数据大小需要 3-10 分钟来处理整个业务逻辑。

当使用 postman 或 python web 请求触发此函数时,它只会等待响应直到 4 分钟。如果该函数到那时执行,它将给出预期响应,否则将返回 504 网关超时错误。即使它在请求端给出 504 错误,azure 函数也会按照预期处理整个负载并且不会失败。

由于请求的响应负责管道中的后续步骤,因此捕获它对我来说变得很重要。我已经尝试过 Get 和 POST 请求。

谁能帮我解决这个问题?

azure azure-functions azure-stack

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

无法启动 Azure 存储模拟器

我正在 VS 2019 上创建我的第一个 azure 函数。当我尝试运行时,出现以下错误:

错误消息图像

我使用的是win 10操作系统。我的VS版本是16.4.29728.190。存储模拟器在azure功能中扮演什么样的角色?为什么我会遇到这个问题,难道是我没有配置azure功能?如何修复它?

visual-studio azure-storage-emulator azure-functions

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

必须在编排客户端上等待 StartNewAsync 吗?

我有一个 Azure 编排,其中触发编排的编排客户端引发了超时异常。

编排客户端功能只做两件事,启动两个编排,等待每个编排,正如大多数示例代码所建议的那样。

await orchestrationClient.StartNewAsync("TableOrchestrator", updates);
await orchestrationClient.StartNewAsync("ClientOrchestrator", clientExport);
Run Code Online (Sandbox Code Playgroud)

然而,据我了解,编排客户端并不是像编排功能那样的特殊功能,因此它最多只能运行10分钟。显然,我的两个编排的总运行时间很可能超过 10 分钟。

问题:

  1. 编排客户端状态是否像实际编排函数一样保存?
  2. 我是否需要等待不依赖于先前编排结果的编排?

更新制作了我的代码功能和运行时的完整示例,如下所示。

看起来,如果之后编写了代码,则启动编排将等待它,但如果编排是最后一条语句,则不会!

更新的问题:

  1. 调用 StartNewAsync() 后的任何代码都会使函数等待直到编排真正完成吗?或者例如日志语句不会触发此行为?
  2. 推荐的代码实践是否应该仅在所有其他代码执行后调用 StartNewAsync() ?

public static class testOrchestration
{
    [FunctionName("Start")]
    public static async Task Start([TimerTrigger("0 */30 * * * *", RunOnStartup = true, UseMonitor = false)]TimerInfo myStartTimer, [OrchestrationClient] DurableOrchestrationClient orchestrationClient, ILogger log)
    {
        var startTime = DateTime.Now;
        log.LogInformation(new EventId(0, "Startup"), "Starting Orchestror 1 ***");

        await orchestrationClient.StartNewAsync("Orchestrator", "ONE");
        log.LogInformation($"Elapsed time, await ONE: {DateTime.Now - startTime}");

        await Task.Delay(5000);
        log.LogInformation($"Elapsed …
Run Code Online (Sandbox Code Playgroud)

c# azure azure-functions azure-durable-functions

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

Azure Functions Core 工具 - 无法访问已处置的对象。对象名称:“IServiceProvider”

当我尝试在本地环境中运行 Azure 函数时,出现以下错误:

在此输入图像描述

如果我尝试使用 v2,我会得到同样的错误。

我已经检查了所有这些问题:

Azure/azure-functions-host#4521 Azure/azure-functions-host#4520

另外,我尝试重新安装 Visual Studio 并更新到最新版本的 Azure Function Core Tools。

如果我通过 Visual Studio 2019 或使用 func host start 从命令行运行函数应用,则会出现此问题。我也尝试过设置不同的端口号。

有人有解决这个问题的方法吗?

更新

我发现 VS 启动 x64 版本,它可能会导致问题。当我下载 func-cli-3.0.2358-x86.msi 并为项目设置调试时,它可以工作。

如何设置 VS 运行 x86 cli?

azure-functions azure-functions-core-tools

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