def __init__(self, sourceMgr, store, file): InputReader.__init__(self, store) self.filename = file self.lineNo = 0 self.ids = [] self.timeParser = None self.columnParsers = [] self.fd = open(self.filename, "rb") sampleText = self.fd.read(1024 * 20) dialect = csv.Sniffer().sniff(sampleText) self.fd.seek(0) self.reader = csv.reader(self.fd, dialect) if csv.Sniffer().has_header(sampleText): self.reader.next() self.lineNo += 1 # read header fields lines = sampleText.splitlines()[:2] dictReader = csv.DictReader(lines, dialect=dialect) dictReader.next() for name in dictReader.fieldnames[1:]: self.ids.append(sourceMgr.register("%s (%s)" % (name, self.filename))) del dictReader else: self.ids.append(sourceMgr.register(self.filename)) self.readAvailableData() EventMgr.startTimer(100 * 1000, self.onTimer)
def __init__ (self, sourceMgr, store, file): InputReader.__init__(self, store) self.filename = file self.lineNo = 0 self.ids = [] self.timeParser = None self.columnParsers = [] self.fd = open(self.filename, 'rb') sampleText = self.fd.read(1024*20) dialect = csv.Sniffer().sniff(sampleText) self.fd.seek(0) self.reader = csv.reader(self.fd, dialect) if csv.Sniffer().has_header(sampleText): self.reader.next() self.lineNo+=1 # read header fields lines = sampleText.splitlines()[:2] dictReader = csv.DictReader(lines, dialect=dialect) dictReader.next() for name in dictReader.fieldnames[1:]: self.ids.append( sourceMgr.register('%s (%s)' % (name, self.filename)) ) del dictReader else: self.ids.append( sourceMgr.register(self.filename) ) self.readAvailableData() EventMgr.startTimer(100*1000, self.onTimer)
def __init__ (self, sourceMgr, store, function, interval=100*1000, name="test"): InputReader.__init__(self, store) self.codeObj = compile(function, '<string>', 'eval') eval(self.codeObj, None, {'t':0}) # check if supplied code is basically ok self.id = sourceMgr.register(name) EventMgr.startTimer(interval, self.onTimer)
def __init__(self, sourceMgr, store, logParser, matches): InputReader.__init__(self, store) self.matchers = [] for m in matches: expr = m['expr'] id = sourceMgr.register(expr) self.matchers.append((id, expr)) now = time.time() for line in logParser.lines(None, now): self._handleLine(line)
def __init__ (self, sourceMgr, store, logParser, matches): InputReader.__init__(self, store) self.matchers = [] for m in matches: expr = m['expr'] id = sourceMgr.register(expr) self.matchers.append( (id, expr) ) now = time.time() for line in logParser.lines(None, now): self._handleLine(line)
def __init__(self, sourceMgr, store, function, interval=100 * 1000, name="test"): InputReader.__init__(self, store) self.codeObj = compile(function, '<string>', 'eval') eval(self.codeObj, None, {'t': 0}) # check if supplied code is basically ok self.id = sourceMgr.register(name) EventMgr.startTimer(interval, self.onTimer)
def __init__ (self, sourceMgr, store, interval=200*1000): InputReader.__init__(self, store) self.lastValues = None if not(os.path.isdir('/proc')): raise Exception("/proc directory not found") # order must match CPU field order in /proc/stat: self.ids = [] self.ids.append( sourceMgr.register('CPU user') ) self.ids.append( sourceMgr.register('CPU nice') ) self.ids.append( sourceMgr.register('CPU system') ) self.ids.append( sourceMgr.register('CPU idle') ) EventMgr.startTimer(interval, self.onTimer)
def __init__(self, sourceMgr, store, interval=200 * 1000): InputReader.__init__(self, store) self.lastValues = None if not (os.path.isdir('/proc')): raise Exception("/proc directory not found") # order must match CPU field order in /proc/stat: self.ids = [] self.ids.append(sourceMgr.register('CPU user')) self.ids.append(sourceMgr.register('CPU nice')) self.ids.append(sourceMgr.register('CPU system')) self.ids.append(sourceMgr.register('CPU idle')) EventMgr.startTimer(interval, self.onTimer)
def __init__ (self, sourceMgr, store, if_name, interval=200*1000): InputReader.__init__(self, store) self.targetIf = if_name self.lastData = {} if not(os.path.isfile('/proc/net/dev')): raise Exception("/proc/net/dev file not found") self.ids = {} self.ids['rBytes'] = sourceMgr.register(self.targetIf + ' bytes received', unit='bytes') self.ids['rPackets'] = sourceMgr.register(self.targetIf + ' packets received', unit='packets') self.ids['tBytes'] = sourceMgr.register(self.targetIf + ' bytes transmitted', unit='bytes') self.ids['tPackets'] = sourceMgr.register(self.targetIf + ' packets transmitted', unit='packets') EventMgr.startTimer(interval, self.onTimer)
def __init__ (self, sourceMgr, store): InputReader.__init__(self, store) cmd = ['sadf'] output = subprocess.Popen(cmd, stdout=subprocess.PIPE, env={}).communicate()[0] fields = {} for line in output.splitlines(): (host, interval, timestamp, dev, name, rawValue) = line.split() fullName = '%s-%s' % (dev, name) if not(fields.has_key(fullName)): id = sourceMgr.register("sysstat (%s)" % fullName) fields[fullName] = id else: id = fields[fullName] t = int(timestamp) value = float(rawValue) self.store.update( (id, t, value) )
def __init__(self, sourceMgr, store, if_name, interval=200 * 1000): InputReader.__init__(self, store) self.targetIf = if_name self.lastData = {} if not (os.path.isfile('/proc/net/dev')): raise Exception("/proc/net/dev file not found") self.ids = {} self.ids['rBytes'] = sourceMgr.register(self.targetIf + ' bytes received', unit='bytes') self.ids['rPackets'] = sourceMgr.register(self.targetIf + ' packets received', unit='packets') self.ids['tBytes'] = sourceMgr.register(self.targetIf + ' bytes transmitted', unit='bytes') self.ids['tPackets'] = sourceMgr.register(self.targetIf + ' packets transmitted', unit='packets') EventMgr.startTimer(interval, self.onTimer)