Parcourir la source

feat: 更新产品标识符

BaiLuoYan il y a 1 mois
Parent
commit
51feb3047f

+ 6 - 0
android/app/src/main/kotlin/com/flashlink/vpn/LogModule.kt

@@ -0,0 +1,6 @@
+package com.flashlink.vpn
+
+object LogModule {
+    const val FL_BOOST_RESULT = "FL_BoostResult"
+    const val FL_PEEK_LOG = "FL_PeekLog"
+}

+ 4 - 4
android/app/src/main/kotlin/com/flashlink/vpn/XRayService.kt

@@ -381,7 +381,7 @@ class XRayService : LifecycleVpnService() {
             val reporter = NetworkReporter.getInstance()
 
             reporter.addBoostResultParams(
-                "NM_BoostResult",
+                LogModule.FL_BOOST_RESULT,
                 stats,
                 config.sessionId,
                 success,
@@ -390,7 +390,7 @@ class XRayService : LifecycleVpnService() {
 
             val intent = Intent(BOOST_RESULT_BROADCAST).apply {
                 setPackage(packageName)
-                putExtra("param", reporter.buildRequestParams("NM_BoostResult"))
+                putExtra("param", reporter.buildRequestParams(LogModule.FL_BOOST_RESULT))
                 putExtra("success", success)
                 putExtra("locationCode", reporter.getLocationCode())
                 putExtra("nodeId", reporter.getConnectedNodeId())
@@ -631,8 +631,8 @@ class XRayService : LifecycleVpnService() {
             VLog.i(TAG, "peek stats: $stats")
 
             val reporter = NetworkReporter.getInstance()
-            reporter.addPeekLogParams("NM_PeekLog", stats, config.sessionId)
-            reporter.report("/api/v1/event", "NM_PeekLog", null, null)
+            reporter.addPeekLogParams(LogModule.FL_PEEK_LOG, stats, config.sessionId)
+            reporter.report("/api/v1/event", LogModule.FL_PEEK_LOG, null, null)
 
             VLog.i(TAG, "Peek log reported successfully")
         } catch (e: Exception) {

+ 9 - 9
lib/app/constants/enums.dart

@@ -62,15 +62,15 @@ enum FirebaseEvent {
 }
 
 enum LogModule {
-  NM_Metrics, //游戏指标
-  NM_Log, // core es 日志
-  NM_BoostResult, // 加速结果
-  NM_PeekLog, // 探针日志
-  NM_ApiLaunchLog, // launch接口报错
-  NM_ApiRouterLog, // router接口报错
-  NM_ApiOtherLog, // 其他接口报错
-  NM_RateLog, // 评分统计
-  NM_FeedbackLog, // 反馈提交
+  FL_Metrics, //游戏指标
+  FL_Log, // core es 日志
+  FL_BoostResult, // 加速结果
+  FL_PeekLog, // 探针日志
+  FL_ApiLaunchLog, // launch接口报错
+  FL_ApiRouterLog, // router接口报错
+  FL_ApiOtherLog, // 其他接口报错
+  FL_RateLog, // 评分统计
+  FL_FeedbackLog, // 反馈提交
 }
 
 enum ConnectionState {

+ 3 - 3
lib/app/controllers/api_controller.dart

@@ -1140,7 +1140,7 @@ class ApiController extends GetxService with WidgetsBindingObserver {
         'id': const Uuid().v4(),
         'time': DateTime.now().millisecondsSinceEpoch,
         'level': LogLevel.info.name,
-        'module': LogModule.NM_Metrics.name,
+        'module': LogModule.FL_Metrics.name,
         'category': Configs.productCode,
         'fields': {'appLog': appLog, 'coreLog': coreLog},
       };
@@ -1214,7 +1214,7 @@ class ApiController extends GetxService with WidgetsBindingObserver {
       if (gzipFilePath == null) {
         return;
       }
-      await uploadLogFile(gzipFilePath, boostSessionId, LogModule.NM_Log.name);
+      await uploadLogFile(gzipFilePath, boostSessionId, LogModule.FL_Log.name);
     } catch (e) {
       rethrow;
     }
@@ -1419,7 +1419,7 @@ class ApiController extends GetxService with WidgetsBindingObserver {
           final filePath = fileEntity.path;
           final fileName = fileEntity.path.split('/').last.split('.').first;
           // 尝试上传缓存的日志
-          await uploadLogFile(filePath, fileName, LogModule.NM_Log.name);
+          await uploadLogFile(filePath, fileName, LogModule.FL_Log.name);
 
           // 上传成功后删除缓存文件
           await fileEntity.delete();

+ 6 - 6
lib/app/controllers/windows_core_api.dart

@@ -175,9 +175,9 @@ class WindowsCoreApi implements BaseCoreApi {
           StatLogEntry(
             id: Uuid().v4(),
             time: ts,
-            level: 'info',
-            module: 'NM_BoostResult',
-            category: 'flashlink',
+            level: LogLevel.info.name,
+            module: LogModule.FL_BoostResult.name,
+            category: Configs.productCode,
             fields: Fields(
               code: 0,
               boostSessionId: _boostSessionId,
@@ -225,9 +225,9 @@ class WindowsCoreApi implements BaseCoreApi {
           StatLogEntry(
             id: Uuid().v4(),
             time: ts,
-            level: 'info',
-            module: 'NM_BoostResult',
-            category: 'flashlink',
+            level: LogLevel.info.name,
+            module: LogModule.FL_BoostResult.name,
+            category: Configs.productCode,
             fields: Fields(
               code: code,
               boostSessionId: _boostSessionId,

+ 2 - 2
lib/app/modules/feedback/controllers/feedback_controller.dart

@@ -97,14 +97,14 @@ class FeedbackController extends GetxController {
       final appConfig = IXSP.getAppConfig();
 
       if (!((appConfig?.disabledLogModules ?? [])).contains(
-        LogModule.NM_FeedbackLog.name,
+        LogModule.FL_FeedbackLog.name,
       )) {
         await apiController.uploadLogs([
           {
             "id": const Uuid().v4(),
             "time": DateTime.now().millisecondsSinceEpoch,
             "level": LogLevel.info.name,
-            'module': LogModule.NM_FeedbackLog.name,
+            'module': LogModule.FL_FeedbackLog.name,
             "category": Configs.productCode,
             "fields": {
               'content': feedbackController.text.trim(),

+ 9 - 9
lib/utils/api_statistics.dart

@@ -148,11 +148,11 @@ class ApiStatistics {
 
   /// 检查模块是否被禁用
   bool _isModuleDisabled(String path) {
-    var moduleName = LogModule.NM_ApiOtherLog.name;
+    var moduleName = LogModule.FL_ApiOtherLog.name;
     if (path == ApiCorePaths.launch) {
-      moduleName = LogModule.NM_ApiLaunchLog.name;
+      moduleName = LogModule.FL_ApiLaunchLog.name;
     } else if (path == ApiCorePaths.getDispatchInfo) {
-      moduleName = LogModule.NM_ApiRouterLog.name;
+      moduleName = LogModule.FL_ApiRouterLog.name;
     }
     return _disabledModules.contains(moduleName);
   }
@@ -520,13 +520,13 @@ class ApiStatistics {
 
       // 检查模块是否禁用
       final isLaunchDisabled = _disabledModules.contains(
-        LogModule.NM_ApiLaunchLog.name,
+        LogModule.FL_ApiLaunchLog.name,
       );
       final isRouterDisabled = _disabledModules.contains(
-        LogModule.NM_ApiRouterLog.name,
+        LogModule.FL_ApiRouterLog.name,
       );
       final isOtherDisabled = _disabledModules.contains(
-        LogModule.NM_ApiOtherLog.name,
+        LogModule.FL_ApiOtherLog.name,
       );
 
       // 过滤掉禁用模块的记录
@@ -562,11 +562,11 @@ class ApiStatistics {
   /// 格式化日志数据用于上传
   List<Map<String, dynamic>> _formatLogsForUpload(List<ApiStatRecord> records) {
     return records.map((record) {
-      var moduleName = LogModule.NM_ApiOtherLog.name;
+      var moduleName = LogModule.FL_ApiOtherLog.name;
       if (record.path == ApiCorePaths.launch) {
-        moduleName = LogModule.NM_ApiLaunchLog.name;
+        moduleName = LogModule.FL_ApiLaunchLog.name;
       } else if (record.path == ApiCorePaths.getDispatchInfo) {
-        moduleName = LogModule.NM_ApiRouterLog.name;
+        moduleName = LogModule.FL_ApiRouterLog.name;
       }
       return {
         'id': record.id,