From 55f654f886345a66bd763257a027c3fcb070d446 Mon Sep 17 00:00:00 2001 From: dni Date: Fri, 5 Jun 2026 15:28:40 +0200 Subject: [PATCH 1/3] feat: improve error logging on call_webhook --- helpers.py | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/helpers.py b/helpers.py index 803c4b6..3c68f8c 100644 --- a/helpers.py +++ b/helpers.py @@ -9,10 +9,10 @@ async def call_webhook(charge: Charge): try: - assert charge.webhook + assert charge.webhook, "charge has no webhook" settings = await get_or_create_satspay_settings() async with httpx.AsyncClient() as client: - # wordpress expect a GET request with json_encoded binary content + # wordpress expects a GET request with json-encoded binary content if settings.webhook_method == "GET": r = await client.request( method="GET", @@ -26,19 +26,16 @@ async def call_webhook(charge: Charge): json=charge.json(), timeout=10, ) - if r.is_success: - logger.success(f"Webhook sent for charge {charge.id}") - else: - logger.warning(f"Failed to call webhook for charge {charge.id}") - logger.warning(charge.webhook) - logger.warning(r.text) + r.raise_for_status() + logger.success(f"Webhook sent for charge {charge.id}") return { - "webhook_success": r.is_success, + "webhook_success": True, "webhook_message": r.reason_phrase, "webhook_response": r.text, } except Exception as e: logger.warning(f"Failed to call webhook for charge {charge.id}") + logger.warning(charge.webhook) logger.warning(e) return {"webhook_success": False, "webhook_message": str(e)} From dc567e641b9b975166302f232b94563a4d8b530e Mon Sep 17 00:00:00 2001 From: dni Date: Fri, 5 Jun 2026 16:10:17 +0200 Subject: [PATCH 2/3] trace --- helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helpers.py b/helpers.py index 3c68f8c..f922393 100644 --- a/helpers.py +++ b/helpers.py @@ -36,7 +36,7 @@ async def call_webhook(charge: Charge): except Exception as e: logger.warning(f"Failed to call webhook for charge {charge.id}") logger.warning(charge.webhook) - logger.warning(e) + logger.exception(e) return {"webhook_success": False, "webhook_message": str(e)} From 04c6d25cce5c9e5eede3eef5cebd61ce9f6b1c18 Mon Sep 17 00:00:00 2001 From: dni Date: Fri, 5 Jun 2026 16:17:04 +0200 Subject: [PATCH 3/3] traceback --- helpers.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/helpers.py b/helpers.py index f922393..834cf00 100644 --- a/helpers.py +++ b/helpers.py @@ -1,3 +1,5 @@ +import traceback + import httpx from lnbits.core.crud import get_standalone_payment from lnbits.settings import settings @@ -36,7 +38,7 @@ async def call_webhook(charge: Charge): except Exception as e: logger.warning(f"Failed to call webhook for charge {charge.id}") logger.warning(charge.webhook) - logger.exception(e) + logger.warning(traceback.format_exc()) return {"webhook_success": False, "webhook_message": str(e)}