Exemplo n.º 1
0
Arquivo: cpu.py Projeto: vadv/cm
	def run(self, event):
		# todo: получить список процессоров.
		# вообще вся эта информация есть в клиенте zabbix
		# но! есть возможность получить PerfData для процесса по маске
		# поэтому в дальнейшем этот плагин будет дополнен конкретикой по процессам postgresql
		cpu_number = '*'
		data = PerfData.get(r'\Processor({0})\% Processor Time'.format(cpu_number), fmts='double', delay=10000)
		if cpu_number = '*':
			cpu_number = 'total'
Exemplo n.º 2
0
Arquivo: disk_stat.py Projeto: vadv/cm
	def run(self, event):

		for disk in DiskInfo.get_fixed_drivers():

			disk_usage = DiskInfo.get_drive_info(disk)

			service = ["graphite:os.mount.{0}.bytes_total".format(disk), "opentsdb:os.mount.bytes_total", "zabbix:os.mount[{0},{1}]".format(disk,"bytes_total")]
			event.send(service,disk_usage.total,tags={"point":disk})

			service = ["graphite:os.mount.{0}.bytes_free".format(disk), "opentsdb:os.mount.bytes_free", "zabbix:os.mount[{0},{1}]".format(disk,"bytes_free")]
			event.send(service,disk_usage.free,tags={"point":disk})


			perf_service = [r'\LogicalDisk(*:\\)\% Disk Read Time'.format(disk), r'\LogicalDisk(*:\\)\% Disk Write Time'.format(disk)]
			data = PerfData.get(perf_service, fmts='double', delay=10000)

			service = ["graphite:os.disk.{0}.{1}".format(disk,"time.read"), "opentsdb:os.disk.time", "zabbix:os.disk.[{0},{1}]".format(dev, "read_time")]
			event.send(service, data[0], tags ={"disk":disk, "operation":"read"})
			service = ["graphite:os.disk.{0}.{1}".format(disk,"time.write"), "opentsdb:os.disk.time", "zabbix:os.disk.[{0},{1}]".format(dev, "write_time")]
			event.send(service, data[1], tags ={"disk":disk, "operation":"write"})