zhubaomin
2024-10-12 baff68fa55ed3212f618330e18cc5735b1caf57f
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/resource/rtuLog/RtuLogManager.java
@@ -128,14 +128,14 @@
   /**
    * 记录Rtu日志
    * @param rtuAddr 控制器地址
    * @param conent 日志内容
    * @param content 日志内容
    */
   private void log(String rtuAddr , String conent){
      File f = getFileForWrite(ResourceUnit.confVo.rtuLogDir , rtuAddr.trim()) ;
      if(f != null){
         writeLog(f , DateTime.yyyy_MM_dd_HH_mm_ss() + "  " + conent) ;
   private void log(String rtuAddr , String content){
      Object[] res = getFileForWrite(ResourceUnit.confVo.rtuLogDir , rtuAddr.trim()) ;
      if(res[0] != null){
         writeLog((File)res[0] , DateTime.yyyy_MM_dd_HH_mm_ss() + "  " + content) ;
      }else{
         log.error("不能得到地址为:" + rtuAddr + "的Rtu日志文件!") ;
         log.error("不能得到地址为:" + rtuAddr + "的Rtu日志文件!(信息编码" + res[1] + ")") ;
      }
   }
   
@@ -145,11 +145,11 @@
    * @param rtuAddr 控制器地址
    * @return 日志文件
    */
   private File getFileForWrite(String path , String rtuAddr) {
   private Object[] getFileForWrite(String path , String rtuAddr) {
      File dir = new File(path) ;
      if(!dir.exists()){
         if(!dir.mkdirs()){
            return null ;
            return new Object[]{null, 1} ;
         }
      }
      File f = new File(path + rtuAddr + ".log");
@@ -162,43 +162,44 @@
               File oldestLog = new File(path + rtuAddr + ".log." + (ResourceUnit.confVo.rtuLogFileMaxCount - 1)) ;
               if(oldestLog.exists()){
                  if(!oldestLog.delete()){
                     return null ;
                     return new Object[]{null, 2} ;
                  }
               }
               for(int i = (ResourceUnit.confVo.rtuLogFileMaxCount - 2) ; i > 0  ; i--){
                  File oldLog = new File(path + rtuAddr + ".log." + i) ;
                  if(oldLog.exists()){
                     if(!oldLog.renameTo(new File(path + rtuAddr + ".log." + (i + 1)))){
                        return null ;
                        return new Object[]{null, 3} ;
                     }
                     if(!oldLog.delete()){
                        return null ;
                        return new Object[]{null, 4} ;
                     }
                  }
               }
               if(!f.renameTo(new File(path + rtuAddr + ".log." + 1))){
                  return null ;
                  return new Object[]{null, 5} ;
               }
               if(!f.delete()){
                  return null ;
               }
               //2024-10-11 上面rename了,应该不用delete了
               //if(!f.delete()){
               //   return new Object[]{null, 6} ;
               //}
               f = new File(path + rtuAddr + ".log");
               if(!f.exists()){
                  if(f.createNewFile()){
                     return f ;
                     return new Object[]{f, 7} ;
                  }else{
                     return null ;
                     return new Object[]{null, 8} ;
                  }
               }
            }else{
               return f ;
               return new Object[]{f, 9} ;
            }
         }else{
            if(f.createNewFile()){
               return f ;
               return new Object[]{f, 10} ;
            }else{
               return null ;
               return new Object[]{null, 11} ;
            }
         }
      } catch (Exception e) {
@@ -212,7 +213,7 @@
            log.error("关闭Rtu日志文件(" + f.getName() + ")读入流时出错" , e) ;
         }
      }
      return null;
      return new Object[]{null, 12} ;
   }
   
   /**