zhou zhou
13 小时以前 82624affb0251b75b62b35567d3eb260c06efe78
rsf-server/src/main/java/com/vincent/rsf/server/ai/service/impl/AiCallLogServiceImpl.java
@@ -8,6 +8,7 @@
import com.vincent.rsf.server.ai.entity.AiMcpCallLog;
import com.vincent.rsf.server.ai.mapper.AiCallLogMapper;
import com.vincent.rsf.server.ai.mapper.AiMcpCallLogMapper;
import com.vincent.rsf.server.ai.store.AiObserveStatsStore;
import com.vincent.rsf.server.ai.service.AiCallLogService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -26,7 +27,7 @@
    private static final Pattern BEARER_PATTERN = Pattern.compile("(?i)(bearer\\s+)([a-z0-9._-]+)");
    private final AiMcpCallLogMapper aiMcpCallLogMapper;
    private final AiRedisSupport aiRedisSupport;
    private final AiObserveStatsStore aiObserveStatsStore;
    @Override
    public AiCallLog startCallLog(String requestId, Long sessionId, Long userId, Long tenantId, String promptCode,
@@ -52,7 +53,7 @@
                .setCreateTime(now)
                .setUpdateTime(now);
        this.save(callLog);
        aiRedisSupport.recordObserveCallStarted(tenantId);
        aiObserveStatsStore.recordObserveCallStarted(tenantId);
        return callLog;
    }
@@ -77,7 +78,7 @@
                .set(AiCallLog::getUpdateTime, new Date()));
        AiCallLog latest = this.getById(callLogId);
        if (latest != null) {
            aiRedisSupport.recordObserveCallFinished(latest.getTenantId(), status, elapsedMs, firstTokenLatencyMs, totalTokens);
            aiObserveStatsStore.recordObserveCallFinished(latest.getTenantId(), status, elapsedMs, firstTokenLatencyMs, totalTokens);
        }
    }
@@ -101,7 +102,7 @@
                .set(AiCallLog::getUpdateTime, new Date()));
        AiCallLog latest = this.getById(callLogId);
        if (latest != null) {
            aiRedisSupport.recordObserveCallFinished(latest.getTenantId(), status, elapsedMs, firstTokenLatencyMs, null);
            aiObserveStatsStore.recordObserveCallFinished(latest.getTenantId(), status, elapsedMs, firstTokenLatencyMs, null);
        }
    }
@@ -127,12 +128,12 @@
                .setUserId(userId)
                .setTenantId(tenantId)
                .setCreateTime(new Date()));
        aiRedisSupport.recordObserveToolCall(tenantId, toolName, status);
        aiObserveStatsStore.recordObserveToolCall(tenantId, toolName, status);
    }
    @Override
    public AiObserveStatsDto getObserveStats(Long tenantId) {
        return aiRedisSupport.getObserveStats(tenantId, () -> loadObserveStatsFromDatabase(tenantId));
        return aiObserveStatsStore.getObserveStats(tenantId, () -> loadObserveStatsFromDatabase(tenantId));
    }
    private AiObserveStatsDto loadObserveStatsFromDatabase(Long tenantId) {