updateCache static method

dynamic updateCache(
  1. TCICLogParam logParam
)

Implementation

static updateCache(TCICLogParam logParam) {
  final actionName = logParam.action;
  final isActionStringInWhiteList = whitelist.contains(actionName);
  final isErrorOrFatal =
      logParam.level == "error" ||
      logParam.level == "fatal" ||
      logParam.level == "warn";
  final enableFullLogReport =
      TCICController.instance.getConfig().basicConfig?.enableFullLogReport ??
      false;
  bool shouldReport =
      enableFullLogReport || isActionStringInWhiteList || isErrorOrFatal;
  if (!shouldReport) {
    return;
  }
  final controller = TCICController.instance;
  final config = controller.getConfig();
  final role = config.role?.name ?? "";
  ReportData reportData = ReportData(
    userAgent: _name,
    actionCost: 0,
    appModule: logParam.module,
    reportModule: logParam.module,
    actionName: logParam.action,
    actionParam: logParam.param,
    actionExt: "",
    actionType: "Other",
    reportLevel: logParam.level,
    errorCode: logParam.code,
    errorDesc: logParam.desc,
    errorStack: logParam.stack,
    appUserId: config.userId,
    appRoomId: config.classId,
    appLanguage: config.langConfig?.lang.name ?? "zh",
    appUserRole: role,
    appBusiness: "tcic_sdk",
    appNativeSdkVersion: config.nativeSdkVersion ?? "",
    appSdkappid: "1400313729",
    appWebSdkVersion: "",
    appWebUiVersion: _dartPackageVersion,
    statusAppCpu: 0,
    statusAppMem: _physicalRamSize,
    statusAvailableMem: _availableRamSize,
    statusCamera: 0,
    statusMic: 0,
    statusSysCpu: 0,
    devAndroidSdkVersion: "",
    devPlatform: _systemName,
    devSysVersion: _devSysVersion,
    devType: _model,
    netType: "",
    netBandwidth: _deviceId,
    netRtt: "",
    netQuality: "",
    reportTime: DateTime.now().millisecondsSinceEpoch,
    reportSessionId: _reportSessionId,
    reportGlobalRandom: _reportGlobalRandom,
    reportLifeId: _reportLifeId,
    appNewEnterId: "",
    sequence: logParam.sequence,
    appPackageName: _packageName,
  );
  _cache.add(reportData);
}