Esempio n. 1
0
def main(argv):
    with utils.lower_privileges(self._logger):
        socket.setdefaulttimeout(DEFAULT_TIMEOUT)
        servers = []

        if json is None:
            utils.err("This collector requires the `json' Python module.")
            return 1

        for conf in elasticsearch_conf.get_servers():
            server = httplib.HTTPConnection(*conf)
            try:
                server.connect()
            except socket.error, (erno, e):
                if erno == errno.ECONNREFUSED:
                    continue
                raise
            servers.append(server)

        if len(servers) == 0:
            return 13  # No ES running, ask tcollector to not respawn us.

        status = node_status(server)
        version = status["version"]["number"]

        while True:
            for server in servers:
                _collect_server(server, version)
            time.sleep(COLLECTION_INTERVAL)
Esempio n. 2
0
def main(argv):
    utils.drop_privileges()
    socket.setdefaulttimeout(DEFAULT_TIMEOUT)
    servers = []

    if json is None:
        utils.err("This collector requires the `json' Python module.")
        return 1

    for conf in elasticsearch_conf.get_servers():
        server = HTTPConnection(*conf)
        try:
            server.connect()
        except socket.error as exc:
            if exc.errno == errno.ECONNREFUSED:
                continue
            raise
        servers.append(server)

    if len(servers) == 0:
        return 13  # No ES running, ask tcollector to not respawn us.

    lock = threading.Lock()
    while True:
        threads = []
        for server in servers:
            status = node_status(server)
            version = status["version"]["number"]
            t = threading.Thread(target=_collect_server,
                                 args=(server, version, lock))
            t.start()
            threads.append(t)
        for thread in threads:
            thread.join()
        time.sleep(COLLECTION_INTERVAL)
Esempio n. 3
0
def main(argv):
  utils.drop_privileges()
  socket.setdefaulttimeout(DEFAULT_TIMEOUT)
  servers = []

  if json is None:
    utils.err("This collector requires the `json' Python module.")
    return 1

  for conf in elasticsearch_conf.get_servers():
    server = HTTPConnection( *conf )
    try:
      server.connect()
    except socket.error as exc:
      if exc.errno == errno.ECONNREFUSED:
        continue
      raise
    servers.append( server )

  if len( servers ) == 0:
    return 13  # No ES running, ask tcollector to not respawn us.

  lock = threading.Lock()
  while True:
    threads = []
    for server in servers:
      status = node_status(server)
      version = status["version"]["number"]
      t = threading.Thread(target = _collect_server, args = (server, version, lock))
      t.start()
      threads.append(t)
    for thread in threads:
      thread.join()
    time.sleep(COLLECTION_INTERVAL)
Esempio n. 4
0
def main(argv):
  with utils.lower_privileges(self._logger):
      socket.setdefaulttimeout(DEFAULT_TIMEOUT)
      servers = []

      if json is None:
        utils.err("This collector requires the `json' Python module.")
        return 1

      for conf in elasticsearch_conf.get_servers():
        server = httplib.HTTPConnection( *conf )
        try:
          server.connect()
        except socket.error, (erno, e):
          if erno == errno.ECONNREFUSED:
            continue
          raise
        servers.append( server )

      if len( servers ) == 0:
        return 13  # No ES running, ask tcollector to not respawn us.

      status = node_status(server)
      version = status["version"]["number"]

      while True:
        for server in servers:
          _collect_server(server, version)
        time.sleep(COLLECTION_INTERVAL)
Esempio n. 5
0
def main(argv):
    utils.drop_privileges()
    socket.setdefaulttimeout(DEFAULT_TIMEOUT)
    servers = []

    if json is None:
        utils.err("This collector requires the `json' Python module.")
        return 1

    for conf in elasticsearch_conf.get_servers():
        server = httplib.HTTPConnection(*conf)
        try:
            server.connect()
        except socket.error, (erno, e):
            if erno == errno.ECONNREFUSED:
                continue
            raise
        servers.append(server)
Esempio n. 6
0
def main(argv):
  utils.drop_privileges()
  socket.setdefaulttimeout(DEFAULT_TIMEOUT)
  servers = []

  if json is None:
    utils.err("This collector requires the `json' Python module.")
    return 1

  for conf in elasticsearch_conf.get_servers():
    server = httplib.HTTPConnection( *conf )
    try:
      server.connect()
    except socket.error, (erno, e):
      if erno == errno.ECONNREFUSED:
        continue
      raise
    servers.append( server )