def perfometer_raritan_pdu_inlet(row, check_command, perf_data): display_color = "#50f020" cap = perf_data[0][0].split('-')[-1] value = float(perf_data[0][1]) unit = perf_data[0][2] display_str = perf_data[0][1] + " " + unit if cap.startswith("rmsCurrent"): return display_str, perfometer_logarithmic(value, 1, 2, display_color) if cap.startswith("unbalancedCurrent"): return display_str, perfometer_linear(value, display_color) if cap.startswith("rmsVoltage"): return display_str, perfometer_logarithmic(value, 500, 2, display_color) if cap.startswith("activePower"): return display_str, perfometer_logarithmic(value, 20, 2, display_color) if cap.startswith("apparentPower"): return display_str, perfometer_logarithmic(value, 20, 2, display_color) if cap.startswith("powerFactor"): return display_str, perfometer_linear(value * 100, display_color) if cap.startswith("activeEnergy"): return display_str, perfometer_logarithmic(value, 100000, 2, display_color) if cap.startswith("apparentEnergy"): return display_str, perfometer_logarithmic(value, 100000, 2, display_color) return "unimplemented", perfometer_linear(0, get_themed_perfometer_bg_color())
def perfometer_check_mk_ibm_svc_license(row, check_command, perf_data): if len(perf_data) < 2: return "", "" licensed = float(perf_data[0][1]) used = float(perf_data[1][1]) if used == 0 and licensed == 0: return "0 of 0 used", perfometer_linear(100, get_themed_perfometer_bg_color()) if licensed == 0: return "completely unlicensed", perfometer_linear(100, "silver") perc_used = used * 100.0 / licensed return "%0.2f %% used" % perc_used, perfometer_linear(perc_used, "silver")
def perfometer_ps(row, check_command, perf_data): perf_dict = {p[0]: float(p[1]) for p in perf_data} try: perc = perf_dict["pcpu"] return "%.1f%%" % perc, perfometer_linear(perc, "#30ff80") except Exception: return "", ""
def perfometer_check_mk_printer_supply(row, check_command, perf_data): left = utils.savefloat(perf_data[0][1]) maxi = utils.savefloat(perf_data[0][6]) if maxi < 0: return "", "" # Printer does not supply a max value # If there is no 100% given, calculate the percentage if maxi not in (0.0, 100.0): left = left * 100.0 / maxi s = row['service_description'].lower() if 'black' in s or ("ink" not in s and s[-1] == 'k'): colors = ['#000000', '#6E6F00', '#6F0000'] elif 'magenta' in s or s[-1] == 'm': colors = ['#FC00FF', '#FC7FFF', '#FEDFFF'] elif 'yellow' in s or s[-1] == 'y': colors = ['#FFFF00', '#FEFF7F', '#FFFFCF'] elif 'cyan' in s or s[-1] == 'c': colors = ['#00FFFF', '#7FFFFF', '#DFFFFF'] else: colors = ['#CCCCCC', '#ffff00', '#ff0000'] st = min(2, row['service_state']) color = colors[st] return "%.0f%%" % left, perfometer_linear(left, color)
def perfometer_hpux_tunables(row, check_command, perf_data): _varname, value, _unit, warn, crit, _minival, threshold = perf_data[0] value = float(value) threshold = float(threshold) if warn != "" or crit != "": warn = int(warn) crit = int(crit) # go red if we're over crit if value > crit: color = "#f44" # yellow elif value > warn: color = "#f84" else: # all green lights color = "#2d3" else: # use a brown-ish color if we have no levels. # otherwise it could be "green" all the way to 100% color = "#f4a460" used = value / threshold * 100 # fixed: true-division return "%.0f%%" % (used), perfometer_linear(used, color)
def perfometer_check_mk_mem_win(row, check_command, perf_data): # only show mem usage, do omit page file color = "#5090c0" ram_total = float(perf_data[0][6]) ram_used = float(perf_data[0][1]) perc = ram_used / ram_total * 100.0 # fixed: true-division return "%d%%" % perc, perfometer_linear(perc, color)
def perfometer_power(row, check_command, perf_data): display_color = "#60f020" value = utils.savefloat(perf_data[0][1]) crit = utils.savefloat(perf_data[0][4]) warn = utils.savefloat(perf_data[0][3]) power_perc = value / crit * 90 # critical is at 90% to allow for more than crit # fixed: true-division if value > warn: display_color = "#FFC840" if value > crit: display_color = "#FF0000" display_string = "%.1f Watt" % value return display_string, perfometer_linear(power_perc, display_color)
def perfometer_temperature_multi(row, check_command, perf_data): display_value = -1 display_color = "#60f020" for _sensor, value, _uom, warn, crit, _min, _max in perf_data: value = int(value) if value > display_value: display_value = value if display_value > int(warn): display_color = "#FFC840" if display_value > int(crit): display_color = "#FF0000" display_string = "%s °C" % display_value return display_string, perfometer_linear(display_value, display_color)
def perfometer_ups_capacity(row, command, perf): value = [float(data[1]) for data in perf if data[0] == 'percent'] if len(value) == 1: return "%0.2f%%" % value[0], perfometer_linear(value[0], '#B2FF7F') return "", ""
def perfometer_battery(row, command, perf): return u"%s%%" % str(perf[0][1]), perfometer_linear( float(perf[0][1]), '#C98D5C')
def perfometer_eaton(row, command, perf): return u"%s°C" % str(perf[0][1]), perfometer_linear( float(perf[0][1]), 'silver')
def perfometer_humidity(row, check_command, perf_data): humidity = float(perf_data[0][1]) return "%3.1f% %" % humidity, perfometer_linear(humidity, '#6f2')
def perfometer_licenses_percent(row, check_command, perf_data): licenses = float(perf_data[0][1]) max_avail = float(perf_data[0][6]) used_perc = 100.0 * licenses / max_avail return "%.0f%% used" % used_perc, perfometer_linear(used_perc, 'orange')
def perfometer_allnet_ip_sensoric_tension(row, check_command, perf_data): display_color = "#50f020" value = float(perf_data[0][1]) return value, perfometer_linear(value, display_color)
def perfometer_airflow_deviation(row, check_command, perf_data): value = float(perf_data[0][1]) return "%0.2f%%" % value, perfometer_linear(abs(value), "silver")
def perfometer_cpu_utilization(row, check_command, perf_data): util = float(perf_data[0][1]) # is already percentage color = "#60c080" return "%.0f %%" % util, perfometer_linear(util, color)
def perfometer_lcp_regulator(row, check_command, perf_data): value = int(perf_data[0][1]) return "%d%%" % value, perfometer_linear(value, "#8c8")
def perfometer_ups_capacity(row, command, perf): return "%0.2f%%" % float(perf[1][1]), perfometer_linear( float(perf[1][1]), '#B2FF7F')
def perfometer_nfsiostat(row, check_command, perf_data): for pd in perf_data: if pd[0] == u'op_s': ops = float(pd[1]) color = '#ff6347' return '%d op/s' % ops, perfometer_linear(ops, color)
def perfometer_el_inphase(row, check_command, perf_data): for data in perf_data: if data[0] == "power": power = utils.savefloat(data[1]) return "%.0f W" % power, perfometer_linear(power, "#8050ff")
def perfometer_ups_outphase(row, check_command, perf_data): load = int(perf_data[2][1]) return "%d%%" % load, perfometer_linear(load, "#8050ff")
def perfometer_simple_mem_usage(row, command, perf): maxw = float(perf[0][6]) used_level = float(perf[0][1]) used_perc = (100.0 / maxw) * used_level return "%d%%" % used_perc, perfometer_linear(used_perc, "#20cf80")
def perfometer_chamber_deviation(row, command, perf): chamber_dev = float(perf[0][1]) return "%0.6f%%" % chamber_dev, perfometer_linear(chamber_dev, "#000080")
def perfometer_esx_vsphere_hostsystem_cpu(row, command, perf): used_perc = float(perf[0][1]) return "%d%%" % used_perc, perfometer_linear(used_perc, "#60f020")
def perfometer_smoke_percent(row, command, perf): used_perc = float(perf[0][1]) return "%0.6f%%" % used_perc, perfometer_linear(used_perc, "#404040")
def perfometer_fanspeed(row, check_command, perf_data): value = float(perf_data[0][1]) return "%.2f%%" % value, perfometer_linear(value, "silver")
def perfometer_cache_hit_ratio(row, check_command, perf_data): hit_ratio = float(perf_data[0][1]) # is already percentage color = "#60f020" return "%.2f %% hits" % hit_ratio, perfometer_linear(hit_ratio, color)