mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00
Merge pull request #1644 from ketanbhatt/feat/1546/http-api-logger-logs-path-and-method
HTTP API Logger logs request path and method too
This commit is contained in:
commit
f5f964d07a
@ -3,7 +3,7 @@ Common classes and methods for API handlers
|
||||
"""
|
||||
import logging
|
||||
|
||||
from flask import jsonify
|
||||
from flask import jsonify, request
|
||||
|
||||
from bigchaindb import config
|
||||
|
||||
@ -14,8 +14,13 @@ logger = logging.getLogger(__name__)
|
||||
def make_error(status_code, message=None):
|
||||
if status_code == 404 and message is None:
|
||||
message = 'Not found'
|
||||
|
||||
response_content = {'status': status_code, 'message': message}
|
||||
logger.error('HTTP API error: %(status)s - %(message)s', response_content)
|
||||
request_info = {'method': request.method, 'path': request.path}
|
||||
request_info.update(response_content)
|
||||
|
||||
logger.error('HTTP API error: %(status)s - %(method)s:%(path)s - %(message)s', request_info)
|
||||
|
||||
response = jsonify(response_content)
|
||||
response.status_code = status_code
|
||||
return response
|
||||
|
@ -67,12 +67,14 @@ def test_post_create_transaction_with_invalid_id(mock_logger, b, client):
|
||||
assert res.json['message'] == expected_error_message
|
||||
assert mock_logger.error.called
|
||||
assert (
|
||||
'HTTP API error: %(status)s - %(message)s' in
|
||||
'HTTP API error: %(status)s - %(method)s:%(path)s - %(message)s' in
|
||||
mock_logger.error.call_args[0]
|
||||
)
|
||||
assert (
|
||||
{'message': expected_error_message, 'status': expected_status_code} in
|
||||
mock_logger.error.call_args[0]
|
||||
{
|
||||
'message': expected_error_message, 'status': expected_status_code,
|
||||
'method': 'POST', 'path': TX_ENDPOINT
|
||||
} in mock_logger.error.call_args[0]
|
||||
)
|
||||
# TODO put back caplog based asserts once possible
|
||||
# assert caplog.records[0].args['status'] == expected_status_code
|
||||
@ -101,12 +103,14 @@ def test_post_create_transaction_with_invalid_signature(mock_logger,
|
||||
assert res.json['message'] == expected_error_message
|
||||
assert mock_logger.error.called
|
||||
assert (
|
||||
'HTTP API error: %(status)s - %(message)s' in
|
||||
'HTTP API error: %(status)s - %(method)s:%(path)s - %(message)s' in
|
||||
mock_logger.error.call_args[0]
|
||||
)
|
||||
assert (
|
||||
{'message': expected_error_message, 'status': expected_status_code} in
|
||||
mock_logger.error.call_args[0]
|
||||
{
|
||||
'message': expected_error_message, 'status': expected_status_code,
|
||||
'method': 'POST', 'path': TX_ENDPOINT
|
||||
} in mock_logger.error.call_args[0]
|
||||
)
|
||||
# TODO put back caplog based asserts once possible
|
||||
# assert caplog.records[0].args['status'] == expected_status_code
|
||||
@ -133,12 +137,14 @@ def test_post_create_transaction_with_invalid_schema(mock_logger, client):
|
||||
assert res.json['message'] == expected_error_message
|
||||
assert mock_logger.error.called
|
||||
assert (
|
||||
'HTTP API error: %(status)s - %(message)s' in
|
||||
'HTTP API error: %(status)s - %(method)s:%(path)s - %(message)s' in
|
||||
mock_logger.error.call_args[0]
|
||||
)
|
||||
assert (
|
||||
{'message': expected_error_message, 'status': expected_status_code} in
|
||||
mock_logger.error.call_args[0]
|
||||
{
|
||||
'message': expected_error_message, 'status': expected_status_code,
|
||||
'method': 'POST', 'path': TX_ENDPOINT
|
||||
} in mock_logger.error.call_args[0]
|
||||
)
|
||||
# TODO put back caplog based asserts once possible
|
||||
# assert caplog.records[0].args['status'] == expected_status_code
|
||||
@ -176,12 +182,14 @@ def test_post_invalid_transaction(mock_logger, client, exc, msg, monkeypatch,):
|
||||
'Invalid transaction ({}): {}'.format(exc, msg))
|
||||
assert mock_logger.error.called
|
||||
assert (
|
||||
'HTTP API error: %(status)s - %(message)s' in
|
||||
'HTTP API error: %(status)s - %(method)s:%(path)s - %(message)s' in
|
||||
mock_logger.error.call_args[0]
|
||||
)
|
||||
assert (
|
||||
{'message': expected_error_message, 'status': expected_status_code} in
|
||||
mock_logger.error.call_args[0]
|
||||
{
|
||||
'message': expected_error_message, 'status': expected_status_code,
|
||||
'method': 'POST', 'path': TX_ENDPOINT
|
||||
} in mock_logger.error.call_args[0]
|
||||
)
|
||||
# TODO put back caplog based asserts once possible
|
||||
# assert caplog.records[2].args['status'] == expected_status_code
|
||||
|
Loading…
x
Reference in New Issue
Block a user