File tree Expand file tree Collapse file tree 3 files changed +10
-10
lines changed
Expand file tree Collapse file tree 3 files changed +10
-10
lines changed Original file line number Diff line number Diff line change 66and request isolation.
77"""
88
9+ import os
910import uuid
1011
1112from collections .abc import Callable
@@ -117,6 +118,11 @@ def require_context() -> RequestContext:
117118_trace_id_getter : TraceIdGetter | None = None
118119
119120
121+ def generate_trace_id () -> str :
122+ """Generate a random trace_id."""
123+ return os .urandom (16 ).hex ()
124+
125+
120126def set_trace_id_getter (getter : TraceIdGetter ) -> None :
121127 """
122128 Set a custom trace_id getter function.
Original file line number Diff line number Diff line change 33"""
44
55import logging
6- import os
76
87from collections .abc import Callable
98
109from starlette .middleware .base import BaseHTTPMiddleware
1110from starlette .requests import Request
1211from starlette .responses import Response
1312
14- from memos .api .context .context import RequestContext , set_request_context
13+ from memos .api .context .context import RequestContext , generate_trace_id , set_request_context
1514
1615
1716logger = logging .getLogger (__name__ )
1817
1918
20- def generate_trace_id () -> str :
21- """Generate a random trace_id."""
22- return os .urandom (16 ).hex ()
23-
24-
2519def extract_trace_id_from_headers (request : Request ) -> str | None :
2620 """Extract trace_id from various possible headers with priority: g-trace-id > x-trace-id > trace-id."""
2721 trace_id = request .headers .get ("g-trace-id" )
Original file line number Diff line number Diff line change 77from dotenv import load_dotenv
88
99from memos import settings
10- from memos .api .context .context import get_current_trace_id
10+ from memos .api .context .context import generate_trace_id , get_current_trace_id
1111
1212
1313# Load environment variables
@@ -33,9 +33,9 @@ class TraceIDFilter(logging.Filter):
3333 def filter (self , record ):
3434 try :
3535 trace_id = get_current_trace_id ()
36- record .trace_id = trace_id if trace_id else "no-trace-id"
36+ record .trace_id = trace_id if trace_id else generate_trace_id ()
3737 except Exception :
38- record .trace_id = "no-trace-id"
38+ record .trace_id = generate_trace_id ()
3939 return True
4040
4141
You can’t perform that action at this time.
0 commit comments