ACP2E-5122:已處理的GraphQL購物車錯誤未正確寫入例外記錄檔

ACP2E-5122修補程式修正了已處理的GraphQL購物車請求錯誤會寫入例外記錄檔作為應用程式錯誤的問題。 安裝Quality Patches Tool (QPT) 1.1.84時,即可使用此修補程式。 修補程式ID為ACP2E-5122。 請注意,此問題已排程在Adobe Commerce 2.4.10中修正。

受影響的產品和版本

已為Adobe Commerce版本建立修補程式:

  • Adobe Commerce (所有部署方法) 2.4.8-p5

與Adobe Commerce版本相容:

  • Adobe Commerce (所有部署方法) 2.4.4 - 2.4.9
NOTE
此修補程式可能適用於發行版本為Quality Patches Tool的其他版本。 若要檢查修補程式是否與您的Adobe Commerce版本相容,請將magento/quality-patches套件更新至最新版本,並在Quality Patches Tool上檢查相容性:搜尋修補程式頁面。 使用修補程式ID作為搜尋關鍵字,以尋找修補程式。

問題

已處理的GraphQL購物車請求錯誤會寫入例外記錄檔作為應用程式錯誤。

要再現的步驟:

  1. 傳送含無效、過期或已損毀遮罩式購物車ID的GraphQL placeOrder變異,例如這個變異:

    code language-none
        mutation {
            placeOrder(input: { cart_id: "test" }) {
                orderV2 {
                    id
                    number
                }
            }
        }
    
  2. 檢查GraphQL回應。

  3. 檢查var/log/exception.log購物車錯誤。

預期結果:

  1. GraphQL要求針對不含​ HTTP 500 ​回應的無效購物車,傳回已處理的使用者端對錯誤裝載。
  2. 已處理的​ GraphQlNoSuchEntityException ​未寫入至var/log/exception.log,而是被路由至嚴重性較低的記錄通道。

實際結果:

每個要求都會將已處理的例外狀況以report.ERROR嚴重性寫入var/log/exception.log,這會導致在重複要求期間記錄成長無限制。

套用修補程式

若要套用個別修補程式,請根據您的部署方法使用下列連結:

相關閱讀

若要進一步瞭解Quality Patches Tool,請參閱:

recommendation-more-help
commerce-operations-help-tools