Правка формата логов

This commit is contained in:
2026-04-28 15:39:37 +03:00
parent 85fcaae31b
commit beee0e0e4b
4 changed files with 27 additions and 5 deletions
+1
View File
@@ -88,6 +88,7 @@ class TraceLogRecord:
@dataclass(frozen=True)
class TraceLogView:
trace_id: str
parent_id: str | None
records: tuple[TraceLogRecord, ...] = ()
+6 -1
View File
@@ -135,11 +135,16 @@ class HttpControlAppFactory:
if request.response_format == "json":
return JSONResponse(
content={
"trace_id": trace_view.trace_id,
"parent_id": trace_view.parent_id or "",
"messages": [record.as_dict(include_attrs_json=request.include_attrs_json) for record in trace_view.records],
}
)
lines = [trace_view.parent_id or ""]
lines = [
f"trace_id: {trace_view.trace_id}",
f"parent_id: {trace_view.parent_id or ''}",
"--------------------------------------------------",
]
for record in trace_view.records:
line = record.message
if request.include_attrs_json:
+1 -1
View File
@@ -16,7 +16,7 @@ class MySqlTraceLogReader(TraceLogReader):
if parent_id is None and not self._trace_exists(trace_id):
return None
records = self._read_records(trace_id, levels)
return TraceLogView(parent_id=parent_id, records=tuple(records))
return TraceLogView(trace_id=trace_id, parent_id=parent_id, records=tuple(records))
def _trace_exists(self, trace_id: str) -> bool:
query = "SELECT 1 FROM trace_contexts WHERE trace_id = %s"