From 84657d4876667c72211463100f552cf00883b928 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Fri, 6 Aug 2021 10:21:25 +0200 Subject: [PATCH] portfolio: log payload on error (#56016) --- tests/form_pages/test_formdata.py | 3 ++- wcs/portfolio.py | 10 ++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/tests/form_pages/test_formdata.py b/tests/form_pages/test_formdata.py index 58c8b0e6..a26db339 100644 --- a/tests/form_pages/test_formdata.py +++ b/tests/form_pages/test_formdata.py @@ -758,12 +758,13 @@ def test_formdata_generated_document_odt_to_pdf_download_push_to_portfolio( resp = login(get_app(pub), username='foo', password='foo').get(form_location) with mock.patch('wcs.portfolio.http_post_request') as http_post_request: - http_post_request.return_value = None, 400, 'null', None # fail + http_post_request.return_value = None, 400, '{"err_desc": "bad user"}', None # fail resp = resp.form.submit('button_export_to') assert http_post_request.call_count == 1 assert caplog.records[-1].message.startswith( "file 'template.pdf' failed to be pushed to portfolio of 'Foo" ) + assert 'bad user' in caplog.records[-1].message # failed to push to portfolio, but document is here resp = resp.follow() # $form/$id/create_doc diff --git a/wcs/portfolio.py b/wcs/portfolio.py index f76899a2..33878149 100644 --- a/wcs/portfolio.py +++ b/wcs/portfolio.py @@ -76,11 +76,17 @@ def push_document(user, filename, stream): def afterjob(job): status = 0 - status = async_post()[0] + status, payload = async_post() if status == 200: get_logger().info('file %r pushed to portfolio of %r', filename, user.display_name) else: - get_logger().error('file %r failed to be pushed to portfolio of %r', filename, user.display_name) + get_logger().error( + 'file %r failed to be pushed to portfolio of %r with status %s and payload %s', + filename, + user.display_name, + status, + payload, + ) if get_response(): get_response().add_after_job( -- 2.32.0.rc0