Beispiel #1
0
def _vlan_metrics_from_prefixes(prefixes, ip_version):
    metrics = []
    ip_ranges = []
    ip_counts = []
    for prefix in prefixes:
        ip_count = metric_path_for_prefix(prefix.net_address, 'ip_count')
        ip_range = metric_path_for_prefix(prefix.net_address, 'ip_range')
        ip_counts.append(ip_count)
        ip_ranges.append(ip_range)
        series = 'alpha(stacked(cactiStyle(alias({0}, "{1}"))),0.8)'.format(
            ip_count, prefix.net_address
        )
        series = (
            r'aliasSub(aliasSub(aliasSub({0},"stacked",""),' r'"\(",""),"\)","")'
        ).format(series)
        metrics.append(series)

    if ip_version == 4:
        series = 'alias(color(sumSeries({0}), "red"), "MAX")'.format(
            join_series(ip_ranges)
        )
        metrics.append(series)

    if len(prefixes) > 1:
        series = 'color(cactiStyle(alias(sumSeries({0}), "Total")), "00000000")'
        series = series.format(join_series(ip_counts))
        metrics.append(series)

    return metrics
Beispiel #2
0
def _vlan_metrics_from_prefixes(prefixes, ip_version):
    metrics = []
    ip_ranges = []
    ip_counts = []
    for prefix in prefixes:
        ip_count = metric_path_for_prefix(prefix.net_address, 'ip_count')
        ip_range = metric_path_for_prefix(prefix.net_address, 'ip_range')
        ip_counts.append(ip_count)
        ip_ranges.append(ip_range)
        series = 'alpha(stacked(cactiStyle(alias({0}, "{1}"))),0.8)'.format(
            ip_count, prefix.net_address)
        series = (r'aliasSub(aliasSub(aliasSub({0},"stacked",""),'
                  r'"\(",""),"\)","")').format(series)
        metrics.append(series)

    if ip_version == 4:
        series = 'alias(color(sumSeries({0}), "red"), "MAX")'.format(
            join_series(ip_ranges))
        metrics.append(series)

    if len(prefixes) > 1:
        series = 'color(cactiStyle(alias(sumSeries({0}), "Total")), "00000000")'
        series = series.format(join_series(ip_counts))
        metrics.append(series)

    return metrics
Beispiel #3
0
def store_tuple(db_tuple):
    """Sends data to whisper with correct metric path

    :param db_tuple: a row from a rrd_fetchall object

    """
    prefix, when, ip_count, mac_count = db_tuple
    ip_range = find_range(prefix)

    when = get_timestamp(when)

    metrics = [(metric_path_for_prefix(prefix, 'ip_count'), (when, ip_count)),
               (metric_path_for_prefix(prefix,
                                       'mac_count'), (when, mac_count)),
               (metric_path_for_prefix(prefix, 'ip_range'), (when, ip_range))]
    LOG.debug(metrics)
    send_metrics(metrics)
Beispiel #4
0
def store_tuple(db_tuple):
    """Sends data to whisper with correct metric path

    :param db_tuple: a row from a rrd_fetchall object

    """
    prefix, when, ip_count, mac_count = db_tuple
    ip_range = find_range(prefix)

    when = get_timestamp(when)

    metrics = [
        (metric_path_for_prefix(prefix, 'ip_count'), (when, ip_count)),
        (metric_path_for_prefix(prefix, 'mac_count'), (when, mac_count)),
        (metric_path_for_prefix(prefix, 'ip_range'), (when, ip_range))
    ]
    LOG.debug(metrics)
    send_metrics(metrics)
Beispiel #5
0
 def find_metric(self, datasource, sysname=None, info_object=None):
     return metric_path_for_prefix(info_object, datasource.name)
Beispiel #6
0
 def _get_prefix_url(prefix):
     return get_simple_graph_url(
         [metric_path_for_prefix(prefix.strCompressed(), 'ip_count')],
         format='json')
 def find_metric(self, datasource, sysname=None, info_object=None):
     return metric_path_for_prefix(info_object, datasource.name)