def get_metrics(self, metrics_to_publish={}):
        metrics_to_publish = MetricsPublisher.get_metrics(self, metrics_to_publish)
        data_mount_count = 0
        log_mount_count = 0
        for disk in psutil.disk_partitions(all=True):
            debug("inodemetrics.disk = " + str(disk))
            if "data" in disk.mountpoint:
                data_mount_count += 1
                debug("Marking disk mount %s as data drive" % disk.mountpoint)
            if "logs" in disk.mountpoint:
                log_mount_count += 1
                debug("Marking disk mount %s as log drive" % disk.mountpoint)

        metrics_to_publish[MetricsPublisher.METRICS_INODE_DATA_MOUNTS_COUNT] = MetricsPublisher.wrap_value_type(self, data_mount_count, MetricsPublisher.GAUGE)
        metrics_to_publish[MetricsPublisher.METRICS_INODE_LOG_MOUNTS_COUNT] = MetricsPublisher.wrap_value_type(self, log_mount_count, MetricsPublisher.GAUGE)
        return metrics_to_publish
示例#2
0
    def get_metrics(self, metrics_to_publish={}):
        metrics_to_publish = MetricsPublisher.get_metrics(
            self, metrics_to_publish)
        data_mount_count = 0
        log_mount_count = 0
        for disk in psutil.disk_partitions(all=True):
            debug("inodemetrics.disk = " + str(disk))
            if "data" in disk.mountpoint:
                data_mount_count += 1
                debug("Marking disk mount %s as data drive" % disk.mountpoint)
            if "logs" in disk.mountpoint:
                log_mount_count += 1
                debug("Marking disk mount %s as log drive" % disk.mountpoint)

        metrics_to_publish[
            MetricsPublisher.
            METRICS_INODE_DATA_MOUNTS_COUNT] = MetricsPublisher.wrap_value_type(
                self, data_mount_count, MetricsPublisher.GAUGE)
        metrics_to_publish[
            MetricsPublisher.
            METRICS_INODE_LOG_MOUNTS_COUNT] = MetricsPublisher.wrap_value_type(
                self, log_mount_count, MetricsPublisher.GAUGE)
        return metrics_to_publish
 def populateMetrics(self, localhostname, host, replica=False):
     solr_stats_url = host["base_url"].replace(localhostname, "localhost") + "/" + host["core"] + "/admin/mbeans?cat=QUERYHANDLER&key=/select&stats=true&wt=json"
     debug(solr_stats_url)
     stats = requests.get(solr_stats_url).json()
     #requests_per_second = stats["solr-mbeans"][1]["/select"]["stats"]["avgRequestsPerSecond"]
     avg_time_per_request = stats["solr-mbeans"][1]["/select"]["stats"]["avgTimePerRequest"]
     median_time_per_request = stats["solr-mbeans"][1]["/select"]["stats"]["medianRequestTime"]
     pct95_time_per_request = stats["solr-mbeans"][1]["/select"]["stats"]["95thPcRequestTime"]
     pct75_time_per_request = stats["solr-mbeans"][1]["/select"]["stats"]["75thPcRequestTime"]
     min5_req_rate_per_second = stats["solr-mbeans"][1]["/select"]["stats"]["5minRateReqsPerSecond"]
     metrics = {}
     if not replica:
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_LEADER_AVG_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, avg_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_LEADER_MEDIAN_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, median_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_LEADER_95PCT_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, pct95_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_LEADER_75PCT_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, pct75_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_LEADER_5MIN_REQ_RATE] = MetricsPublisher.wrap_value_type(self, min5_req_rate_per_second, MetricsPublisher.GAUGE)
     else:
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_REPLICA_AVG_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, avg_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_REPLICA_MEDIAN_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, median_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_REPLICA_95PCT_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, pct95_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_REPLICA_75PCT_REQUEST_TIME] = MetricsPublisher.wrap_value_type(self, pct75_time_per_request, MetricsPublisher.GAUGE)
         metrics[MetricsPublisher.METRICS_SOLRCLOUD_REPLICA_5MIN_REQ_RATE] = MetricsPublisher.wrap_value_type(self, min5_req_rate_per_second, MetricsPublisher.GAUGE)
     return metrics