feat: 日志优化

This commit is contained in:
zdl
2025-10-18 17:33:15 +08:00
parent a7695c7365
commit 47fcb570c0
10 changed files with 80 additions and 24 deletions

View File

@@ -1,6 +1,7 @@
// src/hooks/useSubscription.js
import { useState, useEffect } from 'react';
import { useAuth } from '../contexts/AuthContext';
import { logger } from '../utils/logger';
// 订阅级别映射
const SUBSCRIPTION_LEVELS = {
@@ -46,7 +47,10 @@ export const useSubscription = () => {
// 首先检查用户对象中是否已经包含订阅信息
if (user.subscription_type) {
console.log('📋 从用户对象获取订阅信息:', user.subscription_type);
logger.debug('useSubscription', '从用户对象获取订阅信息', {
subscriptionType: user.subscription_type,
daysLeft: user.subscription_days_left
});
setSubscriptionInfo({
type: user.subscription_type,
status: 'active',
@@ -73,7 +77,10 @@ export const useSubscription = () => {
}
} else {
// 如果API调用失败回退到用户对象中的信息
console.log('📋 API失败使用用户对象中的订阅信息');
logger.warn('useSubscription', 'API调用失败,使用用户对象订阅信息', {
status: response.status,
fallbackType: user.subscription_type || 'free'
});
setSubscriptionInfo({
type: user.subscription_type || 'free',
status: 'active',
@@ -82,7 +89,9 @@ export const useSubscription = () => {
});
}
} catch (error) {
console.error('获取订阅信息失败:', error);
logger.error('useSubscription', 'fetchSubscriptionInfo', error, {
userId: user?.id
});
// 发生错误时,回退到用户对象中的信息
setSubscriptionInfo({
type: user.subscription_type || 'free',
@@ -109,7 +118,10 @@ export const useSubscription = () => {
const hasFeatureAccess = (featureName) => {
// 临时调试如果用户对象中有max权限直接解锁所有功能
if (user?.subscription_type === 'max') {
console.log(`🔓 Max用户直接解锁功能: ${featureName}`);
logger.debug('useSubscription', 'Max用户解锁功能', {
featureName,
userId: user?.id
});
return true;
}