【问题标题】:Azure function - Breakpoint not hitting during debugAzure 函数 - 调试期间断点未命中
【发布时间】:2020-04-30 19:28:53
【问题描述】:

我有一个 QueueTrigger 函数应用程序,当它在 Azure 文件共享/Blob 中找到文件时处理文件。我的 Azure 函数 local.settings.json 指向我在 Azure 中的开发环境。

但是,当我调试时,断点没有命中。

当我从 .csproj 检查时,设置就像

     <None Update = “local.settings.json”>
      <copyToOutPutDirectory>PreserveNewest</copyToOutPutDirectory>

     <copyTopublishDirectory> 
  Never </copyTopublishDirectory>

是不是因为这个断点没有命中?

需要更改哪些设置以确保它在调试期间命中断点,同时指向 Azure 订阅?

编辑:

从 Azure 门户,功能应用配置,我看到配置设置,环境-> 开发。

我应该将此设置更改为调试吗?它会指向我的 local.settings.json 吗?我真的很怀疑,但只是在检查任何线索。

希望我已经正确解释了这一点。谢谢

【问题讨论】:

  • 如果您有 QueueTrigger,这意味着您正在使用存储队列,对吗?您是否正在向队列中添加消息以触发功能?如果有,怎么做?
  • 是的,它是存储队列并在队列中手动添加消息“hello world”。顺序是, 1. 保留文件 2. 放置断点并开始调试 3. 在队列中添加消息。然后,我认为我的断点应该命中。
  • 存储帐户的连接字符串是否正确?函数是否已执行但你的断点没有命中,或者函数根本不会触发?您可以通过查看它打开的控制台窗口来查看它是否正在执行。

标签: azure-functions


【解决方案1】:

看起来你混合了一些东西。

本地运行和调试函数 ...

  1. 不需要 Azure 门户中的任何设置。
  2. 在您的 Azure 环境中不需要 Functions 应用。
  3. 确实使您能够连接到您的本地计算机可以访问的任何东西。

在 Azure 中运行和调试函数 ...

  1. 确实需要在 Function App 配置中进行正确设置。
  2. 确实需要 Azure 环境中的 Functions 应用。
  3. 确实使您能够连接到您的 Function App 可以访问的任何内容。
  4. 确实需要您将远程调试设置为开启
  5. 确实需要您将调试器附加到在 Azure 中运行的实例。

我假设您正在本地运行和调试 Functions。根据您问题中的信息,我最好的猜测是,您要么有一个在云中运行的函数实例,它在本地运行的有机会这样做之前挑选消息,要么与存储帐户的连接是'不正确。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-26
    • 1970-01-01
    • 2010-11-05
    • 1970-01-01
    • 2017-10-07
    • 2011-10-11
    • 2013-11-24
    • 1970-01-01
    相关资源
    最近更新 更多