(self, metrics_json, addl_tags, queue_blacklist)
Get metrics from YARN scheduler if it's type is capacityScheduler
Get metrics from YARN scheduler if it's type is capacityScheduler
Get metrics from YARN scheduler if it s type is capacityScheduler
def _yarn_capacity_scheduler_metrics(self, metrics_json, addl_tags, queue_blacklist):
        """
        Get metrics from YARN scheduler if it's type is capacityScheduler
        """
        tags = ['queue_name:{}'.format(metrics_json['queueName'])]
        tags.extend(addl_tags)

        self._set_yarn_metrics_from_json(tags, metrics_json, YARN_ROOT_QUEUE_METRICS)

        if metrics_json and metrics_json.get('queues') and metrics_json['queues'].get('queue') is not None:
            queues_count = 0
            for queue_json in metrics_json['queues']['queue']:
                queue_name = queue_json['queueName']

                if queue_name in queue_blacklist:
                    self.log.debug('Queue "%s" is blacklisted. Ignoring it', queue_name)
                    continue

                queues_count += 1
                if queues_count > MAX_DETAILED_QUEUES:
                    self.warning(
                        "Found more than 100 queues, will only send metrics on first 100 queues. "
                        "Please filter the queues with the check's `queue_blacklist` parameter"
                    )
                    break

                tags = ['queue_name:{}'.format(str(queue_name))]
                tags.extend(addl_tags)

                self._set_yarn_metrics_from_json(tags, queue_json, YARN_QUEUE_METRICS)
def _yarn_capacity_scheduler_metrics ( self , metrics_json , addl_tags , queue_blacklist ) : tags = [ 'queue_name:{}' . format ( metrics_json [ 'queueName' ] ) ] tags . extend ( addl_tags ) self . _set_yarn_metrics_from_json ( tags , metrics_json , YARN_ROOT_QUEUE_METRICS ) if metrics_json and metrics_json . get ( 'queues' ) and metrics_json [ 'queues' ] . get ( 'queue' ) is not None : queues_count = 0 for queue_json in metrics_json [ 'queues' ] [ 'queue' ] : queue_name = queue_json [ 'queueName' ] if queue_name in queue_blacklist : self . log . debug ( 'Queue "%s" is blacklisted. Ignoring it' , queue_name ) continue queues_count += 1 if queues_count > MAX_DETAILED_QUEUES : self . warning ( "Found more than 100 queues, will only send metrics on first 100 queues. " "Please filter the queues with the check's `queue_blacklist` parameter" ) break tags = [ 'queue_name:{}' . format ( str ( queue_name ) ) ] tags . extend ( addl_tags ) self . _set_yarn_metrics_from_json ( tags , queue_json , YARN_QUEUE_METRICS )