コード例 #1
0
    def __init__(self, config_file=None):
        if not config_file:
            self.config_file = '/etc/openshift_tools/container_metrics.yml'
        else:
            self.config_file = config_file

        self.config = None

        self.parse_config()

        self.cli = AutoVersionClient(base_url='unix://var/run/docker.sock', timeout=120)
        self.docker_util = DockerUtil(self.cli)
        self.zagg_sender = ZaggSender(verbose=True)
コード例 #2
0
                #print docker_p.memory_info().vms
                docker_memoryusage['rss'] = docker_p.memory_info().rss
                docker_memoryusage['vms'] = docker_p.memory_info().vms
        except psutil.NoSuchProcess:
            print 'error'

    return docker_memoryusage

if __name__ == "__main__":
    keys = None
    ms = MetricSender()

    try:
        cli = DockerClient(version='auto', base_url='unix://var/run/docker.sock', timeout=120)

        du = DockerUtil(cli)
        du_dds = du.get_disk_usage()
        docker_memoryusages = getRssVmsofDocker()

        keys = {
            'docker.storage.is_loopback': int(du.is_loopback),
            'docker.ping': 1, # Docker is up
        }

        # These storage metrics are only available in devicemapper and loopback
        if du.is_devicemapper or du.is_loopback:
            keys['docker.storage.data.space.used'] = du_dds.data_space_used
            keys['docker.storage.data.space.available'] = du_dds.data_space_available
            keys['docker.storage.data.space.percent_available'] = du_dds.data_space_percent_available
            keys['docker.storage.data.space.total'] = du_dds.data_space_total
コード例 #3
0

from docker import APIClient as DockerClient
from docker.errors import DockerException
from openshift_tools.monitoring.metric_sender import MetricSender
from openshift_tools.timeout import TimeoutException
from openshift_tools.monitoring.dockerutil import DockerUtil
import json
import time

if __name__ == "__main__":
    keys = None
    mts = MetricSender()
    try:
        cli = DockerClient(version='auto', base_url='unix://var/run/docker.sock', timeout=120)
        du = DockerUtil(cli, max_wait=360)

        # Wait up to 6 minutes
        time_start = time.time()
        du.get_disk_usage()
        time_stop = time.time()
        elapsed_ms = int((time_stop - time_start) * 1000)

        keys = {
            'docker.info_elapsed_ms': elapsed_ms
        }
    except (DockerException, TimeoutException) as ex:
        print "\nERROR talking to docker: %s\n" % ex.message
        keys = {
            'docker.info_elapsed_ms': 360000 # 360000 = 6 minutes
        }