8000 Fix KeyError in log format for requests without AWS context (#9132) · localstack/localstack@adefae0 · GitHub
[go: up one dir, main page]

Skip to content

Commit adefae0

Browse files
Fix KeyError in log format for requests without AWS context (#9132)
1 parent 76498d4 commit adefae0

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

localstack/logging/format.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010

1111
LOG_FORMAT = f"%(asctime)s.%(msecs)03d %(ls_level)5s --- [%(ls_thread){MAX_THREAD_NAME_LEN}s] %(ls_name)-{MAX_NAME_LEN}s : %(message)s"
1212
LOG_DATE_FORMAT = "%Y-%m-%dT%H:%M:%S"
13+
LOG_INPUT_FORMAT = "%(input_type)s(%(input)s, headers=%(request_headers)s)"
14+
LOG_OUTPUT_FORMAT = "%(output_type)s(%(output)s, headers=%(response_headers)s)"
15+
LOG_CONTEXT_FORMAT = "%(account_id)s/%(region)s"
1316

1417
CUSTOM_LEVEL_NAMES = {
1518
50: "FATAL",
@@ -106,17 +109,16 @@ def compress_logger_name(name: str, length: int) -> str:
106109

107110

108111
class TraceLoggingFormatter(logging.Formatter):
109-
aws_trace_log_format = (
110-
LOG_FORMAT + "; %(account_id)s/%(region)s; "
111-
"%(input_type)s(%(input)s, headers=%(request_headers)s); "
112-
"%(output_type)s(%(output)s, headers=%(response_headers)s)"
113-
)
112+
aws_trace_log_format = "; ".join([LOG_FORMAT, LOG_INPUT_FORMAT, LOG_OUTPUT_FORMAT])
114113

115114
def __init__(self):
116115
super().__init__(fmt=self.aws_trace_log_format, datefmt=LOG_DATE_FORMAT)
117116

118117

119118
class AwsTraceLoggingFormatter(TraceLoggingFormatter):
119+
aws_trace_log_format = "; ".join(
120+
[LOG_FORMAT, LOG_CONTEXT_FORMAT, LOG_INPUT_FORMAT, LOG_OUTPUT_FORMAT]
121+
)
120122
bytes_length_display_threshold = 512
121123

122124
def __init__(self):

0 commit comments

Comments
 (0)
0