Pārlūkot izejas kodu

Z991239-6377 #comment 资源管理实体告警精简

80374374 3 mēneši atpakaļ
vecāks
revīzija
7de7cd21c2

+ 21 - 287
Module/mod_ResourceWatcher/ResourceWatcherFSM.cpp

@@ -2026,94 +2026,6 @@ void ResourceWatcherFSM::DetectVersionHasChangedAndWarn()
     }
 }
 
-void ResourceWatcherFSM::DetectDestopFileAndWarn(bool bClear, CSimpleStringA& strFileSaveList)
-{
-	CSimpleStringA filelist(true);
-	int dirCount(0), fileCount(0);
-	CSimpleStringA desktopFullPath(true);
-	CSimpleStringA desktopPublicPath(true);
-    GetUserDesktopDirectory(desktopFullPath);
-    GetCommDesktopDirectory(desktopPublicPath);
-    if (desktopFullPath.IsNullOrEmpty() || desktopPublicPath.IsNullOrEmpty()) {
-        DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("get desktop directory path failed: pub:%d,user:%d", desktopPublicPath.GetLength(), desktopFullPath.GetLength());
-    }
-    else {
-		CAutoArray<CSimpleStringA> desktopPaths;
-		desktopPaths.Init(2);
-		desktopPaths[0] = desktopFullPath;
-		desktopPaths[1] = desktopPublicPath;
-		for (int k = 0; k < desktopPaths.GetCount(); ++k) {
-			CSimpleStringA& curPath = desktopPaths[k];
-			auto arr = fileutil_get_sub_files(curPath);
-			if (arr != NULL) {
-				for (int i = 0; i < arr->nelts; ++i) {
-					char* file = ARRAY_IDX(arr, i, char*);
-					char* filename = strrchr(file, '\\');
-					if (filename != NULL) { filename += 1; }
-					else { filename = file; }
-					bool toRecord = true;
-					if (bClear) {
-						std::string strLowFileName = SP::Utility::ToLower(std::string(filename));
-						if (strFileSaveList.IsNullOrEmpty() || strFileSaveList.IndexOf(strLowFileName.c_str()) == -1) {
-							DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("delete desktop file:%s", filename);
-							RemoveFileA(file);
-							if (!ExistsFileA(file)) {
-								toRecord = false;
-							}
-						}
-						else {
-							DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("skip to delete: %s", filename);
-						}
-					}
-					if (toRecord) {
-						fileCount++;
-						if (!filelist.IsNullOrEmpty()) {
-							filelist += "|";
-						}
-						filelist += filename;
-					}
-				}
-				if (arr->nelts > 0) {
-					filelist += ";";
-				}
-				toolkit_array_free2(arr);
-			}
-
-			arr = fileutil_get_sub_dirs(curPath);
-			if (arr != NULL) {
-				for (int i = 0; i < arr->nelts; ++i) {
-					char* dir = ARRAY_IDX(arr, i, char*);
-					char* dirname = strrchr(dir, '\\');
-					if (dirname != NULL) { dirname += 1; }
-					else { dirname = dir; }
-					bool toRecord = true;
-					if (bClear) {
-						DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("remove desktop dir:%s", dirname);
-						RemoveDirRecursiveA(dir);
-						if (!ExistsDirA(dir)) {
-							toRecord = false;
-						}
-					}
-					if (toRecord) {
-						dirCount++;
-						if (!filelist.IsNullOrEmpty() && i != 0) {
-							filelist += "|";
-						}
-						filelist += dirname;
-					}
-				}
-				if (arr->nelts > 0) {
-					filelist += ";";
-				}
-				toolkit_array_free2(arr);
-			}
-		}
-		LogWarn(Severity_Low, Error_Debug, LOG_INFO_DESKTOP_FILESTATUS
-			, CSimpleStringA::Format("{\"subject\":\"desktop_file\",\"clear_flag\":\"%d\",\"desktop\":\"%s\",\"file_count\":%d,\"dir_count\":%d,\"content\":\"%s\"}"
-				, bClear ? 1 : 0, desktopFullPath.GetData(), fileCount, dirCount, filelist.GetLength() < 950 ? filelist.GetData() : (filelist.SubString(0, 950) + "....").GetData()));
-    }
-}
-
 bool ResourceWatcherFSM::SetDesktopSysIcon2Registry(const std::string& key, bool toDisplay)
 {
     bool result(true);
@@ -2245,144 +2157,6 @@ void ResourceWatcherFSM::MakeSureWin8IntoDesktopPageAtLogon()
     }
 }
 
-void ResourceWatcherFSM::DetectAutoStartFileAndWarn()
-{
-    std::vector<std::string> userlist;
-	std::vector<std::string> publist;
-    std::string r1, r2;
-    GetAutoStartFile(r1, userlist, r2, publist);
-    std::string strUserList = "";
-    std::string strPubList = "";
-
-	std::string strUserAutoList = "";
-	std::string strPubAutoList = "";
-    int userAutoCnt = 0, pubAutoCnt = 0;
-    int userAutoPureCnt = 0, pubAutoPureCnt = 0;
-    int catchLegitCnt = 0;
-    std::vector<std::string> autolist;
-    autolist.push_back(CMB_LINK_FILE_NAME);
-	autolist.push_back(STRATUP_FILENAME_FROM_SCRIPTS);
-
-    for (auto it = userlist.cbegin(); it != userlist.cend(); ++it) {
-        if (!strUserList.empty()) { strUserList += "|"; }
-        strUserList += it->c_str();
-
-        for (auto kt = keyUserlist.cbegin(); kt != keyUserlist.cend(); ++kt) {
-            if (it->compare(*kt) == 0) {
-				if (!strUserAutoList.empty()) { strUserAutoList += "|"; }
-                strUserAutoList += it->c_str();
-                userAutoCnt++;
-                userAutoPureCnt++;
-                break;
-            }
-        }
-		for (auto kt = autolist.cbegin(); kt != autolist.cend(); ++kt) {
-			if (it->compare(*kt) == 0) {
-				if (!strUserAutoList.empty()) { strUserAutoList += "|"; }
-				strUserAutoList += it->c_str();
-				userAutoCnt++;
-                catchLegitCnt++;
-                break;
-			}
-		}
-    }
-	for (auto it = publist.cbegin(); it != publist.cend(); ++it) {
-		if (!strPubList.empty()) { strPubList += "|"; }
-        strPubList += it->c_str();
-
-		for (auto kt = keyPublist.cbegin(); kt != keyPublist.cend(); ++kt) {
-			if (it->compare(*kt) == 0) {
-				if (!strPubAutoList.empty()) { strPubAutoList += "|"; }
-                strPubAutoList += it->c_str();
-                pubAutoCnt++;
-                pubAutoPureCnt++;
-                break;
-			}
-		}
-		for (auto kt = autolist.cbegin(); kt != autolist.cend(); ++kt) {
-			if (it->compare(*kt) == 0) {
-				if (!strPubAutoList.empty()) { strPubAutoList += "|"; }
-				strPubAutoList += it->c_str();
-				pubAutoCnt++;
-                catchLegitCnt++;
-				break;
-			}
-		}
-	}
-	LogWarn(Severity_Low, Error_Debug, LOG_INFO_AUTOSTART_FILESTATUS
-		, CSimpleStringA::Format("{\"subject\":\"autostart_file\", \"file_count\":%d, \"user\":\"%s\",\"public\":\"%s\"}"
-            , userlist.size() + publist.size(), strUserList.c_str(), strPubList.c_str()));
-
-    if (pubAutoCnt + userAutoCnt > 1) {
-		LogWarn(Severity_Low, Error_Debug, LOG_INFO_AUTOSTART_INTEREST_FILESTATUS
-			, CSimpleStringA::Format("{\"subject\":\"duplicate_vtm_autostart_file\", \"user_count\":%d, \"pub_count\":%d, \"user\":\"%s\",\"public\":\"%s\", \"legal_count\":%d, \"delete_flag\":%d}"
-				, userAutoCnt, pubAutoCnt, strUserAutoList.c_str(), strPubAutoList.c_str(), catchLegitCnt, flag4DeleteKeyAutoStartFile));
-    }
-
-    if (catchLegitCnt > 0 && flag4DeleteKeyAutoStartFile && (pubAutoPureCnt > 0 || userAutoPureCnt > 0)) {
-        DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("to delete duplicate auto start file.");
-        DeleteDuplicateAutoStartFile();
-    }
-    //////////////////////////////////////////////////////////////////////////
-
-    struct fileStruc {
-        std::string username;
-        std::vector<std::string> filenames;
-        //JSONCONVERT2OBJECT_MEMEBER_REGISTER(username, filenames)
-    };
-
-    struct fileVec
-    {
-        std::vector<fileStruc> startupfiles;
-        //JSONCONVERT2OBJECT_MEMEBER_REGISTER(startupfiles)
-    } curStartupFileInfo, keyStartFileInfo;
-
-	CSimpleStringA desktopParentPath = "C:\\Users";
-	auto arr = fileutil_get_sub_dirs(desktopParentPath);
-	if (arr != NULL) {
-		for (int i = 0; i < arr->nelts; ++i) {
-			char* dir = ARRAY_IDX(arr, i, char*);
-			char* dirname = strrchr(dir, '\\');
-			if (dirname != NULL) { dirname += 1; }
-			else { dirname = dir; }
-			DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("dir name:%s", dirname);
-            fileStruc curset;
-			fileStruc keyset;
-            curset.username = keyset.username = dirname;
-            ToListCurrentUserStartupFile(dir, curset.filenames, keyset.filenames);
-            curStartupFileInfo.startupfiles.push_back(curset);
-            keyStartFileInfo.startupfiles.push_back(keyset);
-		}
-		toolkit_array_free2(arr);
-	}
-    std::string curset_str(""), keyset_str("");
-    for (auto it = curStartupFileInfo.startupfiles.begin(); it != curStartupFileInfo.startupfiles.end(); ++it) {
-        if (!curset_str.empty()) curset_str += ";";
-        curset_str += it->username;
-        curset_str += ":";
-        std::string content("");
-        for (auto ik = it->filenames.begin(); ik != it->filenames.end(); ik++) {
-            if (!content.empty()) content += "|";
-            content += ik->c_str();
-        }
-        curset_str += content;
-    }
-
-	for (auto it = keyStartFileInfo.startupfiles.begin(); it != keyStartFileInfo.startupfiles.end(); ++it) {
-		if (!keyset_str.empty()) keyset_str += ";";
-        keyset_str += it->username;
-        keyset_str += ":";
-		std::string content("");
-		for (auto ik = it->filenames.begin(); ik != it->filenames.end(); ik++) {
-			if (!content.empty()) content += "|";
-			content += ik->c_str();
-		}
-        keyset_str += content;
-	}
-    //LogWarn(Severity_Low, Error_Debug, LOG_RESOURCEWATCHER_DEBUG_STARTUPFILES, curset_str.c_str());
-	LogWarn(Severity_Low, Error_Debug, LOG_RESOURCEWATCHER_DEBUG_KEY_STARTUPFILES, keyset_str.c_str());
-}
-
 bool ResourceWatcherFSM::RegRdVtmVersion(CSimpleStringA& VTMpath, CSimpleStringA& vtmVersion, CSimpleStringA& verPath)
 {
     bool bRet = false;
@@ -2671,34 +2445,6 @@ void ResourceWatcherFSM::VerifySignature(const CSimpleStringA& filePath)
     FindClose(hFind);
 }
 
-void ResourceWatcherFSM::DetectAndClearDesktopFile()
-{
-#if defined(RVC_OS_WIN)
-	CSmartPointer<IConfigInfo> spCtSettingConfig;
-	GetEntityBase()->GetFunction()->OpenConfig(Config_CenterSetting, spCtSettingConfig);
-
-	int clearDesktopFlag(0);
-	CSimpleStringA strFileWhiteSheet(true);
-	spCtSettingConfig->ReadConfigValueInt(GetEntityBase()->GetEntityName(), "ClearDesktopSwitch", clearDesktopFlag);
-	if (!!clearDesktopFlag) {
-		spCtSettingConfig->ReadConfigValue(GetEntityBase()->GetEntityName(), "DesktopWhiteSheet", strFileWhiteSheet);
-		if (!strFileWhiteSheet.IsNullOrEmpty()) {
-			std::string strLowFileName = SP::Utility::ToLower(std::string(strFileWhiteSheet.GetData()));
-			strFileWhiteSheet = strLowFileName.c_str();
-		}
-	}
-	DetectDestopFileAndWarn(!!clearDesktopFlag, strFileWhiteSheet);
-    /** 如果白名单中有{SysIcon}则不清理桌面系统图标  [Gifur@2024830]*/
-    if (!!clearDesktopFlag && (strFileWhiteSheet.IsNullOrEmpty() || strFileWhiteSheet.IndexOf("{sysicon}") == -1)) {
-		SetDesktopSysIcon2Registry("{20D04FE0-3AEA-1069-A2D8-08002B30309D}", false); //此电脑 图标
-		SetDesktopSysIcon2Registry("{645FF040-5081-101B-9F08-00AA002F954E}", false); //回收站 图标
-		SetDesktopSysIcon2Registry("{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}", false); //网络 图标
-		SetDesktopSysIcon2Registry("{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}", false); //控制面板 图标
-		SetDesktopSysIcon2Registry("{59031a47-3f72-44a7-89c5-5595fe6b30ee}", false); //用户的文件 图标
-    }
-#endif //RVC_OS_WIN
-}
-
 CSimpleStringA ResourceWatcherFSM::GetFileName(const CSimpleStringA& filePath)
 {
     CSimpleStringA tmp = filePath;
@@ -3707,11 +3453,19 @@ void ResourceWatcherFSM::GetSystemMemoryStatus()
 
 void ResourceWatcherFSM::DetectWallpaperAndWarn()
 {
+	//////////////////////////////////////////////////////////////////////////
+	CSmartPointer<IConfigInfo> spCtSettingConfig;
+	GetEntityBase()->GetFunction()->OpenConfig(Config_CenterSetting, spCtSettingConfig);
+	int value(0);
+	spCtSettingConfig->ReadConfigValueInt(GetEntityBase()->GetEntityName(), "MakeSureCMBWallPaper", value);
+	if (!value) {
+		return;
+    }
+    bool wallpapaerSetCMD = true;
 	DWORD dwFlag = KEY_READ | KEY_QUERY_VALUE | KEY_ENUMERATE_SUB_KEYS;
 	if (Is32R64Platform() != 0) {
 		dwFlag |= KEY_WOW64_64KEY;
 	}
-	bool wallpapaerSetCMD = false;
     bool wellDone = false;
 	CSimpleStringA regeditValue(true);
 	HKEY hKey;
@@ -3723,8 +3477,8 @@ void ResourceWatcherFSM::DetectWallpaperAndWarn()
 		memset(szValue, '\0', MAX_PATH + 1);
 		lResult = RegQueryValueEx(hKey, "Wallpaper", NULL, &dwType, (LPBYTE)szValue, &dwSize);
 		if (lResult == ERROR_SUCCESS) {
-			CSimpleStringA strMsg = CSimpleStringA::Format("{\"subject\":\"wallpaper_path\",\"value\":\"%s\"}", szValue);
-			LogWarn(Severity_Low, Error_Debug, LOG_INFO_DESKTOP_WALLPAPER_PATH, strMsg);
+			//CSimpleStringA strMsg = CSimpleStringA::Format("{\"subject\":\"wallpaper_path\",\"value\":\"%s\"}", szValue);
+			//LogWarn(Severity_Low, Error_Debug, LOG_INFO_DESKTOP_WALLPAPER_PATH, strMsg);
             regeditValue = szValue;
             wellDone = true;
 		}
@@ -3738,14 +3492,7 @@ void ResourceWatcherFSM::DetectWallpaperAndWarn()
 		LogWarn(Severity_Low, Error_Unexpect, LOG_WARN_DESKTOP_WALLPAPER_PATH_FETCHFAILE, strMsg);
 	}
     RegCloseKey(hKey);
-    //////////////////////////////////////////////////////////////////////////
-	CSmartPointer<IConfigInfo> spCtSettingConfig;
-	GetEntityBase()->GetFunction()->OpenConfig(Config_CenterSetting, spCtSettingConfig);
-	int value(0);
-    spCtSettingConfig->ReadConfigValueInt(GetEntityBase()->GetEntityName(), "MakeSureCMBWallPaper", value);
-	if (!!value) {
-        wallpapaerSetCMD = true;
-	}
+
 
 	CSimpleStringA RVCWallpaperName("WallPaper1920.png");
     if (wellDone && !regeditValue.IsNullOrEmpty() && regeditValue.IndexOf(RVCWallpaperName) != -1 && ExistsFileA(regeditValue)) {
@@ -3845,25 +3592,12 @@ void ResourceWatcherFSM::InitCustomAutoStartFileSheet()
 			}
 		}
 	}
-	int value(0);
-    spCtSettingConfig->ReadConfigValueInt(GetEntityBase()->GetEntityName(), "DeleteCustomAutoStartFile", value);
-	if (!!value) {
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("Get DeleteCustomAutoStartFile execute flag from CenterSettings");
-		flag4DeleteKeyAutoStartFile = !!value;
-	}
-  //  if (flag4DeleteKeyAutoStartFile) {
-		//strFileInterestSheet.Clear();
-		//spCtSettingConfig->ReadConfigValue(GetEntityBase()->GetEntityName(), "DeleteAutoStartFileSheet", strFileInterestSheet);
-		//if (!strFileInterestSheet.IsNullOrEmpty()) {
-		//	auto fileNames = strFileInterestSheet.Split('|');
-		//	if (fileNames.GetCount() > 0) {
-		//		for (int i = 0; i < fileNames.GetCount(); ++i) {
-		//			DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("DeleteAutoStartFileSheet[%s]", fileNames[i].GetData());
-  //                  delKeylist.push_back(fileNames[i].GetData());
-		//		}
-		//	}
-		//}
-  //  }
+	//int value(0);
+ //   spCtSettingConfig->ReadConfigValueInt(GetEntityBase()->GetEntityName(), "DeleteCustomAutoStartFile", value);
+	//if (!!value) {
+	//	DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("Get DeleteCustomAutoStartFile execute flag from CenterSettings");
+	//	flag4DeleteKeyAutoStartFile = !!value;
+	//}
 }
 
 void ResourceWatcherFSM::InitUserInfo()
@@ -4377,7 +4111,7 @@ void ResourceWatcherFSM::AlarmSystemBasicInfo()
             strResult += CSimpleStringA::Format("\"Serial Number\":\"%s\"", info.strSerialNumber.GetData());
         }
         strResult += "}";
-        LogWarn(Severity_Low, Error_Debug, LOG_INFO_DEVICE_SMBIOS_GET, strResult);
+        DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("InfoAboutManufacturer")(strResult.GetData());
     }
 }
 
@@ -4576,7 +4310,7 @@ void ResourceWatcherFSM::UploadSysVersionInfo(UINT& ver)
         srcData.insert(std::make_pair("cpu-type", sucContent));
     } while (false);
     auto ret = generateJsonStr(srcData);
-    LogWarn(Severity_Low, Error_Hardware, LOG_RESOURCEWATCHER_SYSTEMINFO, ret.second.c_str());
+    DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("SystemBaseInfo")(ret.second.c_str());
 }
 
 void ResourceWatcherFSM::UploadSysActivationStatus()
@@ -4631,7 +4365,7 @@ void ResourceWatcherFSM::UploadSysActivationStatus()
 	else {
 		warnMsg = CSimpleStringA::Format("{\"subject\":\"system_activation\", \"fetch_status\":\"failed\"}");
 	}
-	LogWarn(Severity_Low, Error_Debug, LOG_INFO_SYSTEM_ACTIVATION_INFO, value);
+    DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("SystemActivationStatus")(value);
 }
 
 string ResourceWatcherFSM::MemoryProcessStatus()

+ 0 - 5
Module/mod_ResourceWatcher/ResourceWatcherFSM.h

@@ -392,10 +392,8 @@ public:
 	//2:startmenu lnk from user customization
 	BOOL IsHasSetAutoStartupByFolder(CSimpleStringA& strPath, int& setType);
 	void DetectVersionHasChangedAndWarn();
-	void DetectDestopFileAndWarn(bool bClear, CSimpleStringA& strFileSaveList);
 	bool SetDesktopSysIcon2Registry(const std::string& key, bool toDisplay);
 	void MakeSureWin8IntoDesktopPageAtLogon();
-	void DetectAutoStartFileAndWarn();
 
 	void DetectVersionHasChangedAndWarnCover()
 	{
@@ -405,7 +403,6 @@ public:
 		}
 	}
 	void VerifySignature();
-	void DetectAndClearDesktopFile();
 	void VerifySignature(const CSimpleStringA& filePath);
 	CSimpleStringA GetFileName(const CSimpleStringA& filePath);
 	bool RetrieveDigitalSignatureInfo(const char* pFilePath);
@@ -495,9 +492,7 @@ struct AggerateAutoStatTask : public ITaskSp
 		m_pFSM->DetectWallpaperAndWarn();
 		m_pFSM->DetectAutoStartupCover();
 		m_pFSM->RegOperation4LnkFile();
-		m_pFSM->DetectAndClearDesktopFile();
 		m_pFSM->MakeSureWin8IntoDesktopPageAtLogon();
-		m_pFSM->DetectAutoStartFileAndWarn();
 	}
 };
 

+ 0 - 7
Module/mod_ResourceWatcher/ResourceWatcher_UserCode.h

@@ -3,7 +3,6 @@
 
 #pragma once
 
-#define LOG_RESOURCEWATCHER_SYSTEMINFO 0x50A00004
 #define LOG_RESOURCEWATCHER_COMPOSITING_CHANGE_ON 0x50A00005
 #define LOG_RESOURCEWATCHER_COMPOSITING_CHANGE_OFF 0x50A00006
 #define LOG_RESOURCEWATCHER_CLIPBOARD_REMOVE_FAILED 0x50A0000A
@@ -29,8 +28,6 @@
 
 #define LOG_INFO_MONITOR_SETTINGS	0x50A00035
 #define LOG_INFO_MONITOR_SETTINGS_GET	0x50A00036
-#define LOG_INFO_DEVICE_SMBIOS_GET	0x50A00037
-#define LOG_INFO_SYSTEM_ACTIVATION_INFO	0x50A00038
 
 #define LOG_WARN_VER_DELETE	0x50A00040
 #define LOG_WARN_AUTO_STARTUP_FROM_REGIST 0x50A00041 //注册VBS自启动
@@ -56,16 +53,12 @@
 #define LOG_WARN_PROCESS_STATUS 0x50A00052
 #define LOG_WARN_FILE_DELETE_SUC 0x50A00053
 #define LOG_WARN_ACTIVE_FILE_CHANGE	0x50A00054
-#define LOG_INFO_DESKTOP_FILESTATUS	0x50A00055
 #define LOG_WARN_FILE_DELETE_FAILED	0x50A00057
-#define LOG_INFO_AUTOSTART_FILESTATUS	0x50A00058
-#define LOG_INFO_AUTOSTART_INTEREST_FILESTATUS	0x50A00059
 #define LOG_INFO_LOCAL_VERSION	0x50A0005A //本地终端版本信息
 
 #define LOG_RESOURCEWATCHER_OSD_RECOVER_ENABLE 0x50A00060
 #define LOG_RESOURCEWATCHER_OSD_REMOVE_SUCC 0x50A00061
 #define LOG_RESOURCEWATCHER_DEBUG_STARTUPFILES 0x50A00062
-#define LOG_RESOURCEWATCHER_DEBUG_KEY_STARTUPFILES 0x50A00063
 
 
 #define LOG_EVT_RESOURCE_CPU_ERROR	0x50A00102                //CPU使用率过于异常 > 98%(mod_ResourceWatcher)