Skip to content

Commit a2cf43b

Browse files
authored
Merge pull request #355 from MarketSquare/high_cpu_and_memory_consumption_due_to_logging
Fixes #339 not execute expensive len if log level matches
2 parents a9187fe + 749615a commit a2cf43b

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

src/RequestsLibrary/log.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def format_data_to_log_string(data, limit=LOG_CHAR_LIMIT):
3939
if is_file_descriptor(data):
4040
return repr(data)
4141

42-
if len(data) > limit and logging.getLogger().level > 10:
42+
if logging.getLogger().level > logging.DEBUG and len(data) > limit:
4343
data = "%s... (set the log level to DEBUG or TRACE to see the full content)" % data[:limit]
4444

4545
return data

utests/test_log.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ def test_format_data_not_truncate_debug_level(mocked_logger):
127127
for i in range(0, 100001):
128128
data = data + str(i)
129129
mocked_logger.getLogger().level = 10
130+
mocked_logger.DEBUG = 10
130131
truncated = format_data_to_log_string(data)
131132
assert truncated == data
132133

@@ -137,6 +138,7 @@ def test_format_data_not_truncate_trace_level(mocked_logger):
137138
for i in range(0, 100001):
138139
data = data + str(i)
139140
mocked_logger.getLogger().level = 0
141+
mocked_logger.DEBUG = 10
140142
truncated = format_data_to_log_string(data)
141143
assert truncated == data
142144

@@ -147,5 +149,6 @@ def test_format_data_truncate_info_level(mocked_logger):
147149
for i in range(0, 100001):
148150
data = data + str(i)
149151
mocked_logger.getLogger().level = 20
152+
mocked_logger.DEBUG = 10
150153
truncated = format_data_to_log_string(data)
151154
assert truncated == data[:10000] + '... (set the log level to DEBUG or TRACE to see the full content)'

0 commit comments

Comments
 (0)