Selaa lähdekoodia

Z991239-5694 #comment feat: 版本删除时同步告警本地留存的版本信息

陈纪林80310970 1 vuosi sitten
vanhempi
sitoutus
d4916b6fab

+ 24 - 1
Module/mod_ResourceWatcher/ResourceWatcherFSM.cpp

@@ -1102,6 +1102,7 @@ BOOL ResourceWatcherFSM::DeleteVersionPackage()
         int verSaved = DEFAULT_VERSION_SAVED_COUNT;
         int tmpSaved = 0;
         vector<CVersion> intallInfoVects;
+        vector<CVersion> loaclVerInfo;
         vector<string> files;
 
         spConfig->ReadConfigValueInt("ResourceWatcher", "VerSaveCnt", tmpSaved);
@@ -1148,6 +1149,10 @@ BOOL ResourceWatcherFSM::DeleteVersionPackage()
                 }
                 else {
                     CVersion verName(dwMajor, dwMinor, dwRevision, dwBuild);
+                    if (verName.IsValid())
+                    {
+                        loaclVerInfo.push_back(verName);
+                    }
                     if (verName.IsValid() && verName < info.InstallVersion)   //对高于自身版本的文件不予删除
                     {
                         intallInfoVects.push_back(verName);
@@ -1176,6 +1181,11 @@ BOOL ResourceWatcherFSM::DeleteVersionPackage()
                 }
                 else {
                     CVersion verName(dwMajor, dwMinor, dwRevision, dwBuild);
+                    if (verName.IsValid())
+                    {
+                        loaclVerInfo.push_back(verName);
+                    }
+
                     if (verName.IsValid() && verName < info.InstallVersion)
                     {
                         intallInfoVects.push_back(verName);
@@ -1193,7 +1203,20 @@ BOOL ResourceWatcherFSM::DeleteVersionPackage()
         DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("Install Package's count: %d", nPackCount);
         bool bFailFlag = false;
         int nDelVersionCnt = 0;
-        std::string tInfo("");
+        std::string tInfo(""), curVerInfo("");
+
+        //统计本地版本
+        if (loaclVerInfo.size() > 0)
+        {
+            sort(loaclVerInfo.begin(), loaclVerInfo.end());
+            vector<CVersion>::reverse_iterator riter = loaclVerInfo.rbegin();
+            while (riter != loaclVerInfo.rend()) {
+                curVerInfo = curVerInfo + "|" + std::string((*riter).ToString().GetData());
+                riter++;
+            }
+        }
+        std::string verWarn = "本地留存版本: " + curVerInfo + ";当前版本:" + string(info.InstallVersion.ToString().GetData()) + "。";
+        LogWarn(Severity_Low, Error_Debug, LOG_INFO_LOCAL_VERSION, verWarn.c_str());
 
         //执行版本删除流程
         if (nPackCount != 0) {

+ 1 - 0
Module/mod_ResourceWatcher/ResourceWatcher_UserCode.h

@@ -80,6 +80,7 @@
 #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