【问题标题】:How to catch Exception thrown by a module in Magento oder save before event如何在事件之前捕获 Magento 中的模块抛出的异常或保存
【发布时间】:2020-11-13 07:42:47
【问题描述】:

我有一个 magento 安装。而且我们不断收到一个异常,该异常是在即将下订单时随机抛出的。我们查看了所有日志,但找不到任何内容,这意味着未记录异常。

发生的情况是,用户将商品添加到他/她的购物车,然后前往结帐并填写他们的信息。当他们点击提交订单时,他们将收到一条错误消息。意味着订单未能通过。但不幸的是,用户会收到一封确认订单的电子邮件。所以有些用户再次点击再次提交订单,仍然收到错误信息和确认邮件。

当点击提交订单按钮时,magento 开始保存订单并发出 sales_order_save_before,其中一个模块失败并抛出异常.由于未捕获异常,因此它会停止保存订单。

所以我想知道有没有办法处理监听 sales_order_save_before 事件的任何模块引发的异常,以便我可以将错误写入日志文件?

【问题讨论】:

    标签: magento magento2


    【解决方案1】:

    我认为,如果您在尝试结帐时遇到错误,那么您的日志文件中实际上存在错误。

    如果您在日志文件中找不到任何错误,请搜索结帐中涉及的插件、观察者和首选项,它们编码在第三方模块中,具有此接口作为依赖项:

    \Magento\Framework\Message\ManagerInterface

    【讨论】:

    • 谢谢.. 会尝试并回到这里。但这似乎是一个极端的解决方案。因为我现在需要查看所有使用此接口的第三方代码
    猜你喜欢
    • 1970-01-01
    • 2017-02-24
    • 2019-09-18
    • 1970-01-01
    • 1970-01-01
    • 2021-01-21
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多