Pārlūkot izejas kodu

fix: Enhances tenant ID handling in telemetry (#20304)

Signed-off-by: -LAN- <laipz8200@outlook.com>
tags/1.4.2
-LAN- pirms 5 mēnešiem
vecāks
revīzija
4c46f04d77
Revīzijas autora e-pasta adrese nav piesaistīta nevienam kontam
1 mainītis faili ar 9 papildinājumiem un 2 dzēšanām
  1. 9
    2
      api/extensions/ext_otel.py

+ 9
- 2
api/extensions/ext_otel.py Parādīt failu

@@ -12,18 +12,25 @@ from flask_login import user_loaded_from_request, user_logged_in # type: ignore

from configs import dify_config
from dify_app import DifyApp
from models import Account, EndUser


@user_logged_in.connect
@user_loaded_from_request.connect
def on_user_loaded(_sender, user):
def on_user_loaded(_sender, user: Union["Account", "EndUser"]):
if dify_config.ENABLE_OTEL:
from opentelemetry.trace import get_current_span

if user:
current_span = get_current_span()
if isinstance(user, Account) and user.current_tenant_id:
tenant_id = user.current_tenant_id
elif isinstance(user, EndUser):
tenant_id = user.tenant_id
else:
return
if current_span:
current_span.set_attribute("service.tenant.id", user.current_tenant_id)
current_span.set_attribute("service.tenant.id", tenant_id)
current_span.set_attribute("service.user.id", user.id)



Notiek ielāde…
Atcelt
Saglabāt