Beispiel #1
0
def main(argv):

    logsList = [LogFile(name) for name in fileNamesList]

    print(logsList)

    gen = SpamGenerator()

    while not isAllComplete(logsList):
        for log in logsList:
            log.addContent(gen.generateMessage(random.randrange(7)))
Beispiel #2
0
 def getLogFilesFromData(self, dataDom, cubeName):
     logFilesDom = dataDom.getElementsByTagName('logFile')
     if len(logFilesDom) == 0:
         logger.warning('%s: 未配置logFile, 不对服务日志做收集' % cubeName)
         return []
     logFiles = []
     for logFileDom in logFilesDom:
         file = self.getText(logFileDom, 'fileName', False, cubeName)
         # 读取wholeFile配置, 若未配置则为False
         wholeFile = self.getText(logFileDom, 'wholeFile', False, cubeName)
         if wholeFile.lower() == 'true':
             wholeFile = True
         else:
             wholeFile = False
         # 读取监控的时间间隔, 若未配置则为DEFAULT_LOGFILE_TIME_INTERVAL
         timeInterval = self.getText(logFileDom, 'timeInterval', False,
                                     cubeName)
         if timeInterval != '':
             self.assertDigit(timeInterval, cubeName, 'timeInterval')
             timeInterval = int(timeInterval)
         else:
             timeInterval = self.DEFAULT_LOGFILE_TIME_INTERVAL
         # 读取key
         numberKeys = self.getText(logFileDom, 'numberKeys', False,
                                   cubeName).split(',')
         stringKeys = self.getText(logFileDom, 'stringKeys', False,
                                   cubeName).split(',')
         # 去除各字段首尾空格,以及空字段
         numberKeys = [
             str(item).strip() for item in numberKeys if str(item).strip()
         ]
         stringKeys = [
             str(item).strip() for item in stringKeys if str(item).strip()
         ]
         # 读取beforeDays配置, 默认为0
         beforeDays = 0
         # 读取noTimeStamp配置, 默认为False
         noTimeStamp = False
         # 读取alarm keys
         keyAlarmers = self.parseAlarmKeys(
             self.getText(logFileDom, 'alarmKeys', False, cubeName))
         statisticTool = KeyValueLogTool(numberKeys + stringKeys,
                                         timeInterval, beforeDays,
                                         noTimeStamp, logger)
         logFile = LogFile(self.ldap, self.product, self.type, file,
                           timeInterval, numberKeys, stringKeys,
                           statisticTool, wholeFile, keyAlarmers,
                           self.debug, logger, cubeName)
         if logFile.validate():
             logFiles.append(logFile)
     return logFiles
Beispiel #3
0
 def getGCLogFilesFromData(self, dataDom, cubeName):
     gcLogFilesDom = dataDom.getElementsByTagName('gcLogFile')
     if len(gcLogFilesDom) == 0:
         logger.warning('%s: 未配置gcLogFile, 不对服务的gc日志做收集' % cubeName)
         return []
     gcLogFiles = []
     for gcLogFileDom in gcLogFilesDom:
         file = self.getText(gcLogFileDom, 'fileName', False, cubeName)
         # 读取wholeFile配置, 若未配置则为False
         wholeFile = self.getText(gcLogFileDom, 'wholeFile', False,
                                  cubeName)
         if wholeFile.lower() == 'true':
             wholeFile = True
         else:
             wholeFile = False
         # 读取监控的时间间隔, 若未配置则为DEFAULT_GCLOGFILE_TIME_INTERVAL
         timeInterval = self.getText(gcLogFileDom, 'timeInterval', False,
                                     cubeName)
         if timeInterval != '':
             self.assertDigit(timeInterval, cubeName, 'timeInterval')
             timeInterval = int(timeInterval)
         else:
             timeInterval = self.DEFAULT_GCLOGFILE_TIME_INTERVAL
         # 读取alarm keys
         if 'on' in self.getText(gcLogFileDom, 'alarm', False, cubeName):
             # 可能会有多个gc files, 因此需要deepcopy
             keyAlarmers = self.getGCKeyAlarmers()
         else:
             keyAlarmers = {}
         statisticTool = GCLogTool(logger, self.gcKeys)
         gcLogFile = LogFile(self.ldap, self.product, self.type, file,
                             timeInterval, self.gcKeys, [], statisticTool,
                             wholeFile, keyAlarmers, self.debug, logger,
                             cubeName)
         if gcLogFile.validate():
             gcLogFiles.append(gcLogFile)
     return gcLogFiles