在 AZURE 函数中如何抛出要在 Azure 逻辑 AP 中捕获的错误

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

我有一个调用 AZURE FUNCTION 应用程序的逻辑应用程序,并且似乎工作正常,即逻辑应用程序中没有错误。然而,在检查了 FUNCTION App 写入的数据库中的数据后,我发现它大约一周前开始停止写入。有人没有呼叫服务器团队,“意外”删除了用户。奇怪的是,LOGIC APP 说成功。 当我在VS IDE中测试Function APP时,我在记录的插入语句上遇到错误。我有一个 try-catch 块,错误被捕获在 Catch 中并写入

log.LogInformation(数据库插入错误 " + DateTime.Now.ToString("h:mm:ss tt")); 下面的 Console.Write(ex.Message) 消息。如何将函数应用程序错误作为失败发送到我的逻辑应用程序?

建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。 找不到服务器或无法访问服务器。验证实例名称是否正确 SQL Server 配置为允许远程连接。 (提供者:TCP 提供者,错误:0 - 无法建立连接,因为目标机器主动拒绝。)

azure-functions azure-logic-apps
1个回答
0
投票

我确实同意@Skin的观点,您需要重新抛出异常错误消息以将异常错误消息发送给正在等待Azure Functions响应的逻辑应用程序。

在c#代码中:

Try
{
......
}
Catch(Exception e)
{
throw; // rethrwoing
}

在Python中:

import logging
import azure.functions as func


def main(req: func.HttpRequest) -> func.HttpResponse:
    logging.info('Python HTTP trigger function processed a request.')
    try:  
        result = 1 / 0
        return func.HttpResponse(f"Hello Rithwik Bojja: {result}")
    except ZeroDivisionError as rith:
        logging.error("Hello Rithwik Bojja, ZeroDivisionError raised: %s", rith)
        raise    

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.