Exemplo n.º 1
0
    def _read_health(self, tags):
        """Return values of special system health monitoring tags"""

        tags, single, valid = type_check(tags)

        time_str = time.strftime('%x %H:%M:%S')
        results = []

        for t in tags:
            if t == '@MemFree':
                value = SystemHealth.mem_free()
            elif t == '@MemUsed':
                value = SystemHealth.mem_used()
            elif t == '@MemTotal':
                value = SystemHealth.mem_total()
            elif t == '@MemPercent':
                value = SystemHealth.mem_percent()
            elif t == '@DiskFree':
                value = SystemHealth.disk_free()
            elif t == '@SineWave':
                value = SystemHealth.sine_wave()
            elif t == '@SawWave':
                value = SystemHealth.saw_wave()

            elif t == '@CpuUsage':
                if self.cpu == None:
                    self.cpu = SystemHealth.CPU()
                    time.sleep(0.1)
                value = self.cpu.get_usage()

            else:
                value = None

                m = re.match('@TaskMem\((.*?)\)', t)
                if m:
                    image_name = m.group(1)
                    value = SystemHealth.task_mem(image_name)

                m = re.match('@TaskCpu\((.*?)\)', t)
                if m:
                    image_name = m.group(1)
                    value = SystemHealth.task_cpu(image_name)

                m = re.match('@TaskExists\((.*?)\)', t)
                if m:
                    image_name = m.group(1)
                    value = SystemHealth.task_exists(image_name)

            if value == None:
                quality = 'Error'
            else:
                quality = 'Good'

            if single:
                results.append((value, quality, time_str))
            else:
                results.append((t, value, quality, time_str))

        return results
Exemplo n.º 2
0
    def _read_health(self, tags):
        """Return values of special system health monitoring tags"""

        self._update_tx_time()
        tags, single, valid = type_check(tags)

        time_str = time.strftime('%x %H:%M:%S')
        results = []

        for t in tags:
            if t == '@MemFree': value = SystemHealth.mem_free()
            elif t == '@MemUsed': value = SystemHealth.mem_used()
            elif t == '@MemTotal': value = SystemHealth.mem_total()
            elif t == '@MemPercent': value = SystemHealth.mem_percent()
            elif t == '@DiskFree': value = SystemHealth.disk_free()
            elif t == '@SineWave': value = SystemHealth.sine_wave()
            elif t == '@SawWave': value = SystemHealth.saw_wave()

            elif t == '@CpuUsage':
                if self.cpu == None:
                    self.cpu = SystemHealth.CPU()
                    time.sleep(0.1)
                value = self.cpu.get_usage()

            else:
                value = None

                m = re.match('@TaskMem\((.*?)\)', t)
                if m:
                    image_name = m.group(1)
                    value = SystemHealth.task_mem(image_name)

                m = re.match('@TaskCpu\((.*?)\)', t)
                if m:
                    image_name = m.group(1)
                    value = SystemHealth.task_cpu(image_name)

                m = re.match('@TaskExists\((.*?)\)', t)
                if m:
                    image_name = m.group(1)
                    value = SystemHealth.task_exists(image_name)

            if value == None:
                quality = 'Error'
            else:
                quality = 'Good'

            if single:
                results.append((value, quality, time_str))
            else:
                results.append((t, value, quality, time_str))

        return results