コード例 #1
0
 def init_db_device(self, urls):
     """
      从RCMS获取需要的设备,更新url表,将dev_id加入表中
     :param urls:
     :return:
     """
     worker_hostname = REFRESH_WORKER_HOST
     devs = rcmsapi.getDevices(urls[0].get("channel_code"))
     logger.debug('init_db_device:%s' % urls[0].get("layer_type"))
     if urls[0].get("layer_type") != "one":
         devs += rcmsapi.getFirstLayerDevices(urls[0].get("channel_code"))
     db_device = {
         "devices": verify.create_dev_dict(devs),
         "unprocess": len(devs),
         "created_time": datetime.now(),
         "_id": self.dev_id
     }
     for url in urls:
         url["dev_id"] = self.dev_id
         db_update(db.url, {"_id": ObjectId(url.get("id"))}, {
             "$set": {
                 "dev_id": self.dev_id,
                 "worker_host": worker_hostname,
                 "recev_host": url.get("recev_host", "")
             }
         })
     logger.debug(
         "url_init_db_device successed ,worker_id: %s ,dev_id: %s " %
         (self.get_id_in_requestofwork(), self.dev_id))
     return db_device
コード例 #2
0
ファイル: preload_models.py プロジェクト: jy02383505/bermuda3
def get_devs_unopened(args):
    dev_name = args.pop("dev_name")
    rcms_devs = [dev for dev in rcmsapi.getFirstLayerDevices(args.get("channel_code")) + rcmsapi.getDevices(args.get("channel_code"))  if dev.get("status") == "OPEN"]
    if dev_name:
        rcms_devs = [ dev for dev in rcms_devs if dev.get("name") == dev_name ]
    opened_devs = [dev.get("name") for dev in db.preload_config_device.find(args)]
    return [dev for dev in rcms_devs if dev.get("name") not in opened_devs]
コード例 #3
0
ファイル: dir_refresh.py プロジェクト: jy02383505/bermuda3
 def init_db_device(self, url):
     worker_hostname = REFRESH_WORKER_HOST
     devs = rcmsapi.getDevices(url.get("channel_code"))
     if url.get("layer_type") != "one":
         devs += rcmsapi.getFirstLayerDevices(url.get("channel_code"))
     db_device = {
         "devices": verify.create_dev_dict(devs),
         "unprocess": len(devs),
         "created_time": datetime.now(),
         "_id": self.dev_id
     }
     # dev_id = db.device.insert(db_device)
     url["dev_id"] = self.dev_id
     #db_update(db.url, {"_id": ObjectId(url.get("id"))}, {"$set": {"dev_id": self.dev_id}})
     db_update(db.url, {"_id": ObjectId(url.get("id"))}, {
         "$set": {
             "dev_id": self.dev_id,
             "worker_host": worker_hostname,
             "recev_host": url.get("recev_host", "")
         }
     })
     logger.debug(
         "dir_init_db_device successed ,url_id : %s ,dev_id = %s " %
         (url.get("id"), self.dev_id))
     return db_device
コード例 #4
0
def test_get_devs_unopened():
    args = {'channel_code': '28444'}
    rcms_devs = [
        dev for dev in rcmsapi.getFirstLayerDevices(args.get("channel_code")) +
        rcmsapi.getDevices(args.get("channel_code"))
        if dev.get("status") == "OPEN"
    ]
    print rcms_devs
コード例 #5
0
    def init_db_device(self, url):
        worker_hostname = REFRESH_WORKER_HOST
        devs = rcmsapi.getDevices(url.get("channel_code"))
        if url.get("layer_type") != "one":
            devs += rcmsapi.getFirstLayerDevices(url.get("channel_code"))

        try:
            devs += rcmsapi.getGrayDevices(url.get("channel_code"))
        except Exception, e:
            logger.debug(traceback.format_exc())
コード例 #6
0
ファイル: retry_task.py プロジェクト: jy02383505/bermuda3
def get_rcms_devices(urls):
    devs_f = []
    devs = rcmsapi.getDevices(urls[0].get("channel_code"))
    dev_s = [dev['name'] for dev in devs if dev['status'] == 'OPEN']

    logger.debug('get_rcms_device:%s' % urls[0].get("layer_type"))
    if urls[0].get("is_multilayer"):
        devs_f = rcmsapi.getFirstLayerDevices(urls[0].get("channel_code"))
        devs_f = [dev['name'] for dev in devs_f if dev['status'] == 'OPEN']
    return dev_s, devs_f
コード例 #7
0
def init_preload_devs(channel_code):
    try:
        rcms_devs = []
        for dev in rcmsapi.getFirstLayerDevices(channel_code):
            if dev.get("status") == "OPEN":
                rcms_devs.append(dev)
        for dev in rcmsapi.getDevices(channel_code):
            if dev.get("status") == "OPEN":
                rcms_devs.append(dev)
        logger.debug("rcms_devs::::%s" % rcms_devs)
        return rcms_devs
    except Exception, e:
        logger.debug("init_pre_devs error:%s " % e)
        logger.debug(traceback.format_exc(e))
コード例 #8
0
ファイル: rcmsapi_test.py プロジェクト: jy02383505/bermuda
 def test_getFirstLayerDevices(self):
     devs = []
     when(rcmsapi.redisutil.firstlayer_cache).hvals(
         self.rediscache.FIRSTLAYER_DEVICES_PREFIX %
         self.channel_code).thenReturn(None)
     when(rcmsapi.redisutil.MongoToRedis()).render_devices_mongo(
         self.channel_code, False).thenReturn(None)
     when(rcmsapi.redisutil.OutSysToRedis()).render_devices_rcms(
         self.channel_code, False).thenReturn(None)
     self.assertEqual(devs, rcmsapi.getFirstLayerDevices(self.channel_code))
     # verify(rcmsapi.redisutil.firstlayer_cache,2).hvals(self.rediscache.FIRSTLAYER_DEVICES_PREFIX % self.channel_code)
     verify(rcmsapi.redisutil.MongoToRedis()).render_devices_mongo(
         self.channel_code, False)
     verify(rcmsapi.redisutil.OutSysToRedis()).render_devices_rcms(
         self.channel_code, False)
コード例 #9
0
ファイル: url_refresh.py プロジェクト: jy02383505/bermuda
 def init_db_device(self, urls):
     """
      从RCMS获取需要的设备,更新url表,将dev_id加入表中
     :param urls:
     :return:
     """
     worker_hostname = REFRESH_WORKER_HOST
     devs = rcmsapi.getDevices(urls[0].get("channel_code"))
     logger.debug('init_db_device:%s' % urls[0].get("layer_type"))
     if urls[0].get("layer_type") != "one":
         devs += rcmsapi.getFirstLayerDevices(urls[0].get("channel_code"))
     try:
         devs += rcmsapi.getGrayDevices(urls[0].get("channel_code"))
     except Exception, e:
         logger.debug(traceback.format_exc())
コード例 #10
0
def get_physical_devs(urls):
    devs = rcmsapi.getDevices(urls[0].get("channel_code"))
    devs += rcmsapi.getFirstLayerDevices(urls[0].get("channel_code"))
    #devs = verify.create_dev_dict(devs)
    return devs