Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 164f843

Browse files
authored
Merge pull request #170 from ImMin5/master
Implement response size logging
2 parents ec68295 + e956e34 commit 164f843

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

‎src/spaceone/core/service/__init__.py‎

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import copy
22
import functools
3+
import json
34
import logging
45
import time
5-
from typing import Generator, Union, Literal
6+
from typing import Generator, Union, Literal, Any
67

78
from opentelemetry import trace
89
from opentelemetry.trace import format_trace_id
@@ -244,7 +245,10 @@ def _pipeline(
244245
if print_info_log:
245246

246247
process_time = time.time() - start_time
247-
_LOGGER.info(f"(RESPONSE) => SUCCESS (Time = {process_time:.2f}s)")
248+
response_size = _get_response_size(response_or_iterator)
249+
_LOGGER.info(
250+
f"(RESPONSE) => SUCCESS (Time = {process_time:.2f}s, Size = {response_size} bytes)",
251+
)
248252

249253
return response_or_iterator
250254

@@ -265,6 +269,22 @@ def _pipeline(
265269
delete_transaction()
266270

267271

272+
def _get_response_size(response_or_iterator: Any) -> int:
273+
try:
274+
if isinstance(response_or_iterator, dict):
275+
response_size = len(json.dumps(response_or_iterator, ensure_ascii=False))
276+
elif isinstance(response_or_iterator, (bytes, bytearray)):
277+
response_size = len(response_or_iterator)
278+
elif response_or_iterator is None:
279+
response_size = 0
280+
else:
281+
response_size = -1
282+
except Exception:
283+
response_size = -1
284+
285+
return response_size
286+
287+
268288
def _error_handler(
269289
error_type: _ERROR_TYPE,
270290
error: ERROR_BASE,

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /