示例#1
0
def mysqlc():
    import _mysql as mysql
    a = time.time()
    conn = mysql.connect(
        host='192.168.50.83',
        port=3306,
        user='******',
        passwd='lp1234xy',
        # conv={1: int,
        #       2: int,
        #       3: int,
        #       4: float,
        #       5: float,
        #       8: int,
        #       9: int},
        # client_flag=32 | 65536 | 131072,
        connect_timeout=7)
    b = time.time()
    strsql = 'select a.*,b.* from mydb2024_data.data_rtu_record as a \
                left join mydb2024_data.data_rtu_loop_record as b \
                on a.date_create=b.date_create and a.rtu_id=b.rtu_id limit 1000'

    conn.query(strsql)
    cur = conn.store_result()
    x = cur.fetch_row(0)
    print(len(x))
    c = time.time()
    print(mx.stamp2time(a), mx.stamp2time(b), mx.stamp2time(c))
    print(c - b)
示例#2
0
文件: iftest.py 项目: xyzj/lump
def test_ipcsubmit():
    global user_id
    print('=== ipc submit ===')
    lstcmd = (
        'ipc.verf.get',
        'ipc.lscmd.get',
        'ipc.date.get',
        'ipc.time.get',
        'ipc.qudat.get',
    )  # 'ipc.datetime.set')
    url = baseurl + 'ipcctl'
    for cmd in lstcmd:
        rqmsg = msgif.rqIpcCtl()
        rqmsg.dev_id.extend(['901001000001'])
        rqmsg.ctl_cmd = cmd
        if cmd == 'ipc.datetime.set':
            rqmsg.dev_datetime = int(time.time())
        scode = mx.getMD5('{0}fendangao'.format(
            mx.stamp2time(time.time(), format_type='%Y%m%d%H')))
        data = {
            'scode': scode,
            'pb2': base64.b64encode(rqmsg.SerializeToString())
        }
        r = pm.request('POST', url, fields=data, timeout=10.0, retries=False)
        msg = msgif.CommAns()
        msg.ParseFromString(base64.b64decode(r.data))
        time.sleep(15)
    print('ipc submit finish')
    time.sleep(0)
示例#3
0
文件: iftest.py 项目: xyzj/lump
def test_slutimerget():
    global user_id
    print('=== slu timer get ===')
    url = baseurl + 'slutimerctl'
    rqmsg = msgif.rqSluTimerCtl()
    rqmsg.head.ver = 160328
    rqmsg.data_mark = 0
    # rqmsg.dt_start = mx.time2stamp('2016-12-10 00:00:00')
    # rqmsg.dt_end = mx.time2stamp('2017-06-20 00:00:00')
    rqmsg.tml_id.extend([1500003])
    # rqmsg.data_mark=1
    scode = mx.getMD5('{0}7ya54Gv5Y'.format(
        mx.stamp2time(time.time(), format_type='%Y%m%d%H')))
    # print(rqmsg)
    data = {
        "uuid": user_id,
        'pb2': base64.b64encode(rqmsg.SerializeToString())
    }
    # data = {'scode': scode, 'pb2': 'KICY26 LKzCAqNasaDlSs='}
    r = pm.request('POST', url, fields=data, timeout=300.0, retries=False)
    msg = msgif.CommAns()
    # msg.ParseFromString(r.data)
    msg.ParseFromString(base64.b64decode(r.data))
    print(msg)
    print(msg.head)
    print('post finish')
    time.sleep(0)
示例#4
0
文件: mxhpss.py 项目: xyzj/pypsu
    def showDebug(self, msg):
        """
        是否显示调试信息

        Args:
            msg (str): 调试信息内容
        """
        if self.debug:
            print("[D] {0} {1}".format(stamp2time(_time.time()), repr(msg)))
示例#5
0
文件: mxsp.py 项目: xyzj/pypsu
    def _showDebug(self, msg, loglevel=20):
        """
        显示调试信息

        Args:
            msg (str): 调试信息内容
            loglevel (int, optional): 日志等级
        """
        writeLog(repr(msg), loglevel)
        if self.debug:
            print("[D] {0} {1}".format(stamp2time(_time.time()), repr(msg)))
示例#6
0
文件: iftest.py 项目: xyzj/lump
def test_cleansms():
    global user_id
    print('=== clean sms ===')
    url = baseurl + 'cleansmsalarm'
    rqmsg = init_head(msgif.rqEluCtl())
    # rqmsg.tml_id.extend([1600001, 1600002])
    # rqmsg.loop_id.extend([1,2,5,8])
    scode = mx.getMD5('{0}7ya54Gv5Y'.format(
        mx.stamp2time(time.time(), format_type='%Y%m%d%H')))
    data = {'scode': scode, 'pb2': base64.b64encode(rqmsg.SerializeToString())}
    r = pm.request('POST', url, fields=data, timeout=10.0, retries=False)
    msg = msgif.CommAns()
    msg.ParseFromString(base64.b64decode(r.data))
    print(msg)
    time.sleep(0)
示例#7
0
文件: iftest.py 项目: xyzj/lump
def test_ipcuplink():
    global user_id
    print('=== ipc uplink ===')
    url = baseurl + 'ipcuplink'
    scode = mx.getMD5('{0}fendangao'.format(
        mx.stamp2time(time.time(), format_type='%Y%m%d%H')))
    rqmsg = msgif.rqIpcUplink()
    rqmsg.dev_id = '902001000001'
    rqmsg.raw_string = '1,1'
    data = {'scode': scode, 'pb2': base64.b64encode(rqmsg.SerializeToString())}
    r = pm.request('POST', url, fields=data, timeout=10.0, retries=False)
    msg = msgif.CommAns()
    msg.ParseFromString(base64.b64decode(r.data))
    print(msg)
    print('ipc uplink finish')
    time.sleep(0)
示例#8
0
文件: iftest.py 项目: xyzj/lump
def test_submitsms():
    global user_id
    print('=== sms submit ===')
    url = baseurl + 'submitsms'
    scode = mx.getMD5('{0}aUd2213F1'.format(
        mx.stamp2time(time.time(), format_type='%Y%m%d%H')))
    rqmsg = msgif.rqSubmitSms()
    rqmsg.tels.extend([18916788720])
    rqmsg.msg = u'tessdf第三方法ta'
    print(scode, base64.b64encode(rqmsg.SerializeToString()))
    data = {'scode': scode, 'pb2': base64.b64encode(rqmsg.SerializeToString())}
    # data = {'scode': scode, 'pb2': 'ChgIAhDI5AkaCXN1Ym1pdHNtc6AGwKfRwwUSCu62yro68vXwjkMaBTU1NTUK'}
    r = pm.request('POST', url, fields=data, timeout=10.0, retries=False)
    print(r.data)
    msg = msgif.CommAns()
    msg.ParseFromString(base64.b64decode(r.data))
    print(msg)
    print('ipc submit finish')
    time.sleep(0)
示例#9
0
文件: iftest.py 项目: xyzj/lump
def test_userinfo():
    global user_id
    print('=== userinfo ===')
    url = baseurl + 'userlist'
    rqmsg = init_head(msgif.rqUserInfo())
    # rqmsg.user_name = 'wuning'

    data = {
        'scode':
        mx.getMD5('{0}53f5c320'.format(
            mx.stamp2time(time.time(), format_type='%Y%m%d%H'))),
        'pb2':
        base64.b64encode(rqmsg.SerializeToString())
    }
    r = pm.request('POST', url, fields=data, timeout=10.0, retries=False)
    msg = msgif.UserInfo()
    msg.ParseFromString(base64.b64decode(r.data))
    print(msg)
    time.sleep(0)
示例#10
0
文件: iftest.py 项目: xyzj/lump
def test_ipcqueue():
    global user_id
    print('=== query em data ===')
    scode = mx.getMD5('{0}fendangao'.format(
        mx.stamp2time(time.time(), format_type='%Y%m%d%H')))
    url = baseurl + 'queryemdata'
    rqmsg = msgif.rqQueryEMData()
    # rqmsg.head.paging_num = 1
    # rqmsg.head.paging_buffer_tag = 1478230469047982
    # rqmsg.head.paging_idx = 30
    rqmsg.dev_id = '901001000999'
    # rqmsg.dt_start = 1489021647
    # rqmsg.dt_end = 1489108047
    rqmsg.dt_start = mx.time2stamp('2017-05-01 0:0:0')
    rqmsg.dt_end = mx.time2stamp('2017-07-28 23:59:59')
    data = {'scode': scode, 'pb2': base64.b64encode(rqmsg.SerializeToString())}
    r = pm.request('POST', url, fields=data, timeout=10.0, retries=False)
    msg = msgif.QueryEMData()
    msg.ParseFromString(base64.b64decode(r.data))
    print(msg)
    print('query em data finish')
    time.sleep(0)
示例#11
0
文件: ipc.py 项目: xyzj/lump
 def post(self):
     legal, rqmsg, msg = yield self.check_arguments(msgws.rqIpcCtl(),
                                                    None,
                                                    use_scode=1)
     if legal:
         scmd = rqmsg.ctl_cmd
         sdownlink = ''
         for devid in rqmsg.dev_id:
             if devid.startswith('901001'):
                 if scmd == 'ipc.verf.get':
                     sdownlink = 'QV\r\n'
                 elif scmd == 'ipc.lscmd.get':
                     sdownlink = 'QH\r\n'
                 elif scmd == 'ipc.date.get':
                     sdownlink = 'QD\r\n'
                 elif scmd == 'ipc.time.get':
                     sdownlink = 'QT\r\n'
                 elif scmd == 'ipc.datetime.set':
                     x = mx.stamp2time(rqmsg.dev_datetime)
                     d, t = x.split(' ')
                     y, m, dd = d.split('-')
                     h, mm, s = t.split(':')
                     sdownlink = '\r\nQC:{0},{1},{2},{3},{4},{5}'.format(
                         y, m, dd, h, mm, s)
                 elif scmd == 'ipc.qudat.get':
                     sdownlink = 'QI\r\n'
                 else:
                     msg.head.if_st = 46
                 if len(sdownlink) > 0:
                     msgpub = self.init_msgws(msgws.rqIpcUplink(), scmd)
                     msgpub.dev_id = devid
                     msgpub.raw_string = sdownlink
                     libiisi.send_to_zmq_pub(
                         'ipc.req.{0}.{1}'.format(scmd, devid),
                         msgpub.SerializeToString())
                     del msgpub
     self.write(mx.convertProtobuf(msg))
     self.finish()
     del legal, rqmsg, msg
示例#12
0
文件: iftest.py 项目: xyzj/lump
def test_submittcs():
    global user_id
    print('=== sms submit ===')
    url = baseurl + 'submittcs'
    scode = mx.getMD5('{0}3a533ba0'.format(
        mx.stamp2time(time.time(), format_type='%Y%m%d%H')))
    rqmsg = msgif.rqSubmitSms()
    rqmsg.tels.extend([18916788720])
    rqmsg.msg = u'tessdf第三方法ta'
    print(scode, base64.b64encode(rqmsg.SerializeToString()))
    data = {'scode': scode, 'pb2': base64.b64encode(rqmsg.SerializeToString())}
    data = {
        'scode':
        scode,
        'pb2':
        'ChsIAhABGAEgASgBMAE6DXdsc3QucnR1LmEwMDASDwoFgYCA+AcQlU4aARQoAaIG5QGqAeEBCkDYXnvttdfoP9hee+211+g/11prrbXW6D/YXnvttdfoP9VUU0011eg/2WSTTTbZ6D/WVltttdXoP9VSSy211Og/EkC44YYbbrjRP7jhhhtuuNE/N9xwww03vD8ffPDBBx+8PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGkCcccYZZ5zJP5RRRhlllMk/v/3222+/rT+fffbZZ5+tPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAII/YAij/AToIAAAAAAEBAQFCCAAAAAAAAAAA'
    }
    r = pm.request('POST', url, fields=data, timeout=10.0, retries=False)
    print(r.data)
    msg = msgif.CommAns()
    msg.ParseFromString(base64.b64decode(r.data))
    print(msg)
    print('ipc submit finish')
    time.sleep(0)
示例#13
0
    def computing_security_code(self, scode):
        xsalt = zlib.decompress('x\x9c35N3M662\x00\x00\t;\x01\xfc')

        x = set([
            mx.getMD5('{0}{1}'.format(
                mx.stamp2time(time.time(), format_type='%Y%m%d%H'), xsalt))
        ])
        if self.salt != '':
            x = set([
                mx.getMD5('{0}{1}'.format(
                    mx.stamp2time(time.time(), format_type='%Y%m%d%H'),
                    self.salt))
            ])

        if time.localtime()[4] >= 55:
            x.add(
                mx.getMD5('{0}{1}'.format(
                    mx.stamp2time(time.time() + 360, format_type='%Y%m%d%H'),
                    xsalt)))
            if self.salt != '':
                x.add(
                    mx.getMD5('{0}{1}'.format(
                        mx.stamp2time(time.time() + 360,
                                      format_type='%Y%m%d%H'), self.salt)))
        elif time.localtime()[4] < 5:
            x.add(
                mx.getMD5('{0}{1}'.format(
                    mx.stamp2time(time.time() - 360, format_type='%Y%m%d%H'),
                    xsalt)))
            if self.salt != '':
                x.add(
                    mx.getMD5('{0}{1}'.format(
                        mx.stamp2time(time.time() - 360,
                                      format_type='%Y%m%d%H'), self.salt)))

        return 1 if scode.lower() in x else 0
示例#14
0
文件: ioloopclient.py 项目: xyzj/lump
    #
    #     time.sleep(1)
    # if poll_list.get(socket) == zmq.POLLIN:
    #     r, s = socket.recv_multipart()
    #     if "json" in r:
    #         print(r, "---", s)
    #     msg = None
    #     print(mx.stamp2time(time.time()), r, s)
    #     if msg is not None:
    #         print(str(msg))
    #     # i = 0

    if poll_list.get(socket2) == zmq.POLLIN:
        r, s = socket2.recv_multipart()
        if "json" in r:
            print(mx.stamp2time(time.time()), r, "---", json.dumps(s))
        else:
            # msg = msgslu.Wlst_slu_9d00()

            print(mx.stamp2time(time.time()), r)
            # if "fa00" in r:
            #     print(msg.FromString(s))
        del r, s

    if poll_list.get(socket2) == zmq.POLLERR:
        print('socket2 error')
        # msg = msgtcs.MsgWithCtrl()
        # msg.ParseFromString(s)
        # print(r,pb2json(msg))
        # if "json" in r:
        #     print(r, s)
示例#15
0
文件: ipc.py 项目: xyzj/lump
    def post(self):
        legal, rqmsg, msg = yield self.check_arguments(msgws.rqIpcUplink(),
                                                       msgws.CommAns(),
                                                       use_scode=1)
        if legal:
            devid = rqmsg.dev_id
            raw_string = rqmsg.raw_string.replace('\r\n', '')
            createsql = ''
            insertsql = ''
            db_names = set()
            if devid[:6] == '901001':  # 申欣环保
                if raw_string.startswith('QI:'):
                    data = raw_string.split(':')[1]
                    lstdata = data.split(',')
                    ym = mx.stamp2time(time.time(), format_type='%y%m')
                    for i in libiisi.qudata_sxhb:
                        db_names.add('sens_data_{0:03d}_month_{1}'.format(
                            i, ym))
                    strsql = 'select TABLE_NAME from INFORMATION_SCHEMA.TABLES \
                        where TABLE_SCHEMA="{0}" and TABLE_NAME like "{1}"'.format(
                        libiisi.cfg_dbname_dg, '%sens_data_%_month_%')
                    record_total, buffer_tag, paging_idx, paging_total, cur = yield self.mydata_collector(
                        strsql,
                        need_fetch=1,
                        buffer_tag=msg.head.paging_buffer_tag,
                        paging_idx=msg.head.paging_idx,
                        paging_num=msg.head.paging_num)
                    if record_total is not None:
                        for z in cur:
                            db_names.discard(z[0])
                    del cur
                    for z in db_names:
                        createsql += libiisi.sqlstr_create_emtable.format(z)
                    if len(createsql) > 0:
                        createsql = 'use {0};'.format(
                            libiisi.cfg_dbname_dg) + createsql
                        yield self.mydata_collector(createsql, need_fetch=0)

                    t = int(time.time())
                    for i in range(len(libiisi.qudata_sxhb)):
                        try:
                            insertsql += 'insert into {5}.sens_data_{0:03d}_month_{1} (dev_id,dev_data,date_create) values ({2},{3},{4});'.format(
                                libiisi.qudata_sxhb[i], ym, devid, lstdata[i],
                                t, libiisi.cfg_dbname_dg)
                        except:
                            pass
                    if len(insertsql) > 0:
                        yield self.mydata_collector(insertsql, need_fetch=0)

                elif raw_string.startswith('QH:'):  # 读取支持的指令
                    msgpub = self.init_msgws(msgws.rqIpcCtl(), 'ipc.lscmd.get')
                    msgpub.dev_id.extend([devid])
                    msgpub.dev_cmds = raw_string[3:].replace(' ', '').replace(
                        '|', ',')
                    libiisi.send_to_zmq_pub(
                        'ipc.rep.ipc.lscmd.get.{0}'.format(devid),
                        msgpub.SerializeToString())
                elif raw_string.startswith('QD:'):  # 读取日期
                    msgpub = self.init_msgws(msgws.rqIpcCtl(), 'ipc.date.get')
                    msgpub.dev_id.extend([devid])
                    s = raw_string[3:].split(',')
                    msgpub.dev_datetime = int(
                        mx.time2stamp('{0}-{1}-{2} 00:00:00'.format(
                            s[0], s[1], s[2])))
                    libiisi.send_to_zmq_pub(
                        'ipc.rep.ipc.date.get.{0}'.format(devid),
                        msgpub.SerializeToString())
                elif raw_string.startswith('QT:'):  # 读取时间
                    msgpub = self.init_msgws(msgws.rqIpcCtl(), 'ipc.time.get')
                    msgpub.dev_id.extend([devid])
                    s = raw_string[3:].split(',')
                    msgpub.dev_datetime = int(
                        mx.time2stamp('{0}-{1}-{2} {3}:{4}:{5}'.format(
                            time.localtime()[0],
                            time.localtime()[1],
                            time.localtime()[2], s[0], s[1], s[2])))
                    libiisi.send_to_zmq_pub(
                        'ipc.rep.ipc.time.get.{0}'.format(devid),
                        msgpub.SerializeToString())
                elif raw_string.startswith('QV:') or raw_string.startswith(
                        'Device ID:'):  # 读取版本
                    msgpub = self.init_msgws(msgws.rqIpcCtl(), 'ipc.verf.get')
                    msgpub.dev_id.extend([devid])
                    msgpub.dev_ver = raw_string
                    libiisi.send_to_zmq_pub(
                        'ipc.rep.ipc.verf.get.{0}'.format(devid),
                        msgpub.SerializeToString())
                elif raw_string.startswith('QC:'):  # 设置日期和时间
                    msgpub = self.init_msgws(msgws.rqIpcCtl(),
                                             'ipc.datetime.set')
                    msgpub.dev_id.extend([devid])
                    if 'completed' in raw_string:
                        msgpub.dev_datetime = 1
                    else:
                        msgpub.dev_datetime = 0
                    libiisi.send_to_zmq_pub(
                        'ipc.rep.ipc.datetime.set.{0}'.format(devid),
                        msgpub.SerializeToString())
                else:
                    msg.head.if_st = 46
                    msg.head.if_msg = 'raw data error.'
            elif devid[:6] == "902001":  # 武汉天河机场
                x = "1,2,3,4,5,6,7,8,9,10"
                if os.path.isfile("list.txt"):
                    with open("list.txt", "r") as f:
                        x = f.readline()
                        f.close()
                y = rqmsg.raw_string.split(',')
                tcsdata = dict()
                if y[1] == "1":  # off
                    for i in range(1, 7):
                        tcsdata['k{0}'.format(i)] = 0

                    tcsmsg = libiisi.initRtuJson(2, 7, 1, 1, 1,
                                                 'wlst.rtu.4b00',
                                                 self.request.remote_ip, 0, x,
                                                 tcsdata)
                    # libiisi.set_to_send(tcsmsg, 0, False)
                    libiisi.send_to_zmq_pub(
                        'tcs.req.{0}.wlst.rtu.2210'.format(
                            libiisi.cfg_tcs_port),
                        json.dumps(tcsmsg, separators=(',', ':')).lower())
                else:
                    for i in range(1, 7):
                        tcsdata['k{0}'.format(i)] = 1
                    tcsmsg = libiisi.initRtuJson(2, 7, 1, 1, 1,
                                                 'wlst.rtu.4b00',
                                                 self.request.remote_ip, 0, x,
                                                 tcsdata)
                    # libiisi.set_to_send(tcsmsg, 0, False)
                    libiisi.send_to_zmq_pub(
                        'tcs.req.{0}.wlst.rtu.2210'.format(
                            libiisi.cfg_tcs_port),
                        json.dumps(tcsmsg, separators=(',', ':')).lower())
            del devid, raw_string, createsql, insertsql, db_names
        else:
            msg.head.if_st = 0
            msg.head.if_msg = 'Security code error'

        self.write(mx.convertProtobuf(msg))
        self.finish()
        del msg, rqmsg, legal
示例#16
0
文件: ipc.py 项目: xyzj/lump
    def post(self):
        legal, rqmsg, msg = yield self.check_arguments(msgws.rqQueryEMData(),
                                                       msgws.QueryEMData(),
                                                       use_scode=1)

        if legal:
            sdt, edt = self.process_input_date(rqmsg.dt_start,
                                               rqmsg.dt_end,
                                               to_chsarp=0)
            tdt = int(time.time())
            edt = tdt if edt > tdt else edt
            devid = rqmsg.dev_id
            msg.dev_id = devid
            yms = []
            if sdt > 0:
                # ym = mx.stamp2time(sdt, format_type='%y%m')
                sym = mx.stamp2time(sdt, format_type='%y%m')
                eym = mx.stamp2time(edt, format_type='%y%m')
                while int(sym) <= int(eym):
                    yms.append(sym)
                    if sym[2:] == '12':
                        sym = str(int(sym[:2]) + 1) + '01'
                    else:
                        sym = sym[:2] + '{0:02d}'.format(int(sym[2:]) + 1)
            else:
                yms = [mx.stamp2time(time.time(), format_type='%y%m')]

            rebuild_cache = False
            xquery = msgws.QueryEMData()

            if devid.startswith('901001'):
                for ym in yms:
                    strsql = 'select t{0}.dev_id,t{0}.date_create '.format(
                        libiisi.qudata_sxhb[0])
                    for x in libiisi.qudata_sxhb:
                        strsql += ', t{0}.dev_data as d{0}'.format(x)
                    strsql += ' from {0}.sens_data_{1}_month_{2} as t{1}'.format(
                        libiisi.cfg_dbname_dg, libiisi.qudata_sxhb[0], ym)
                    for i in range(1, len(libiisi.qudata_sxhb)):
                        strsql += ' left join {0}.sens_data_{1}_month_{2} as t{1} on t{3}.dev_id=t{1}.dev_id and t{3}.date_create=t{1}.date_create'.format(
                            libiisi.cfg_dbname_dg, libiisi.qudata_sxhb[i], ym,
                            libiisi.qudata_sxhb[0])

                    if sdt == 0 and edt == 0:
                        # no, no2, co, co2, pm25, temp, rehu, pm10, o3, tvoc, h2s, so2 = libiisi.qudata_sxhb
                        strsql += ' where t{0}.dev_id="{1}" order by t{0}.date_create desc limit 1'.format(
                            libiisi.qudata_sxhb[0], devid)
                    else:
                        strsql += ' where t{0}.dev_id="{1}" and t{0}.date_create>={2} and t{0}.date_create<={3} order by t{0}.date_create'.format(
                            libiisi.qudata_sxhb[0], devid, sdt, edt)
                    # print(strsql)
                    record_total, buffer_tag, paging_idx, paging_total, cur = yield self.mydata_collector(
                        strsql,
                        need_fetch=1,
                        buffer_tag=msg.head.paging_buffer_tag,
                        paging_idx=msg.head.paging_idx,
                        paging_num=msg.head.paging_num)
                    if record_total is None:
                        msg.head.if_st = 45
                    else:
                        msg.head.paging_record_total = record_total
                        msg.head.paging_buffer_tag = buffer_tag
                        msg.head.paging_idx = paging_idx
                        msg.head.paging_total = paging_total
                        for d in cur:
                            qudata = msgws.QueryEMData.Qudata()
                            qudata.no = float(
                                d[2]) if d[2] is not None else 0.0
                            qudata.no2 = float(
                                d[3]) if d[3] is not None else 0.0
                            qudata.co = float(
                                d[4]) if d[4] is not None else 0.0
                            qudata.co2 = float(
                                d[5]) if d[5] is not None else 0.0
                            qudata.pm25 = float(
                                d[6]) if d[6] is not None else 0.0
                            qudata.temp = float(
                                d[7]) if d[7] is not None else 0.0
                            qudata.rehu = float(
                                d[8]) if d[8] is not None else 0.0
                            qudata.pm10 = float(
                                d[9]) if d[9] is not None else 0.0
                            qudata.o3 = float(
                                d[10]) if d[10] is not None else 0.0
                            qudata.tvoc = float(
                                d[11]) if d[11] is not None else 0.0
                            qudata.h2s = float(
                                d[12]) if d[12] is not None else 0.0
                            qudata.so2 = float(
                                d[13]) if d[13] is not None else 0.0
                            qudata.dt_data = int(
                                d[1]) if d[1] is not None else 0.0
                            msg.qudata.extend([qudata])
                            del qudata
                    del cur, strsql

        self.write(mx.convertProtobuf(msg))
        self.finish()
        del msg, rqmsg, legal
示例#17
0
    x = uuid.uuid1()
    os.system("mkdir -p /tmp/{0}".format(x))
    if True:
        # print(showtext["path"])
        # p = raw_input("")
        # if len(p) == 0:
        p = os.path.join(defaultpath, "oahu")
        # else:
        #     p = os.path.join(p, "oahu")

        print(showtext["start_i"])
        os.system("tar -Jxvf {1}/{2} -C /tmp/{0}/ > /tmp/.0".format(
            x, SCRIPT_DIR, pkgfile))
        # os.system("7z x -y -plkjfdsa -o/tmp/{0}/ {1}/{2} > /tmp/0".format(x, SCRIPT_DIR, pkgfile))
        t = stamp2time(os.path.getmtime(r"/tmp/{0}/iisi/iisi".format(x)),
                       format_type="%y%m%d")

        s = """#!/bin/bash
mkdir -p {0}/iisi{3}
cp -rf /tmp/{1}/iisi/* {0}/iisi{3}/
cp -rf /tmp/{1}/iisi/.profile {0}/iisi{3}/

mkdir -p /etc/oahu

chmod +x {0}/iisi{3}/iisi
ln -sf {0}/iisi{3}/iisi /usr/local/bin/iisi
ln -sf {0}/iisi{3}/iisi /usr/bin/iisi
ln -sf {0}/iisi{3}/zmqproxy /usr/local/bin/zmqproxy
ln -sf {0}/iisi{3}/zmqproxy /usr/bin/zmqproxy
    """.format(p, x, username, t)
        with open("/tmp/{0}/tmp.sh".format(x), "w") as f:
示例#18
0
    def get(self):
        # try:
        jobs = self.get_arguments('do')
        if len(jobs) == 0:
            self.write(self.help_doc)
        else:
            for do in jobs:
                if do == 'remoteip' or do == 'all':
                    self.write(self.request.remote_ip)

                if do == 'showsalt':
                    self.write(repr(self.salt))
                    self.write('<br/>')

                if do == 'reloadprofile':
                    libiisi.load_profile()
                    self.write(libiisi.cache_user.keys())
                    self.write('<br/>')

                if do == 'timer' or do == 'all':
                    self.write(
                        '<br/><b><u>===== show system timer =====</u></b><br/>'
                    )
                    self.write('{0:.6f} ({1})<br/>'.format(
                        time.time(), mx.stamp2time(time.time())))
                    self.write('<br/>')

                if do == 'testconfig' or do == 'all':
                    self.write('<b><u>===== test config =====</u></b><br/>')

                    m = yield self.check_zmq_status(b'zmq.filter',
                                                    'zmq test message',
                                                    b'zmq.filter')
                    if len(m) > 0:
                        self.write(
                            'Test zmq config ... success. 『 {0} 』<br/>'.format(
                                libiisi.m_config.getData('zmq_port')))
                    else:
                        self.write(
                            'Test zmq config ... failed. 『 {0} 』<br/>'.format(
                                libiisi.m_config.getData('zmq_port')))

                    thc = AsyncHTTPClient()
                    url = '{0}'.format(libiisi.cfg_fs_url)
                    try:
                        rep = yield thc.fetch(url,
                                              raise_error=True,
                                              request_timeout=30)
                        self.write(
                            'Test flow config ... success. 『 {0} 』<br/>'.
                            format(url))
                    except Exception as ex:
                        self.write(
                            'Test flow config ... failed. 『 {0} 』<br/>'.format(
                                url))

                    del url, thc

                    try:
                        jk_isok = False
                        dg_isok = False
                        strsql = 'select schema_name from information_schema.schemata where schema_name in ("{0}","{1}");'.format(
                            self._db_name, libiisi.cfg_dbname_dg)
                        record_total, buffer_tag, paging_idx, paging_total, cur = yield self.mydata_collector(
                            strsql, need_fetch=1)

                        if record_total is None:
                            jk_isok = False
                            dg_isok = False
                        else:
                            for d in cur:
                                if d[0] == self._db_name:
                                    jk_isok = True
                                elif d[0] == libiisi.cfg_dbname_dg:
                                    dg_isok = True
                        if jk_isok:
                            self.write(
                                'Test jkdb config ... success. 『 {0} / {1} 』<br/>'
                                .format(libiisi.m_config.getData('db_host'),
                                        self._db_name))
                        else:
                            self.write(
                                'Test jkdb config ... failed. 『 {0} / {1} 』<br/>'
                                .format(libiisi.m_config.getData('db_host'),
                                        self._db_name))
                        if dg_isok:
                            self.write(
                                'Test dgdb config ... success. 『 {0} / {1} 』<br/>'
                                .format(libiisi.m_config.getData('db_host'),
                                        libiisi.cfg_dbname_dg))
                        else:
                            self.write(
                                'Test dgdb config ... failed. 『 {0} / {1} 』<br/>'
                                .format(libiisi.m_config.getData('db_host'),
                                        libiisi.cfg_dbname_dg))
                        del cur
                    except:
                        self.write(
                            'Test jkdb config ... failed. 『 {0} / {1} 』<br/>'.
                            format(libiisi.m_config.getData('db_host'),
                                   self._db_name))
                        self.write(
                            'Test dgdb config ... failed. 『 {0} / {1} 』<br/>'.
                            format(libiisi.m_config.getData('db_host'),
                                   libiisi.cfg_dbname_dg))
                    self.write('<br/>')
        # except Exception as ex:
        #     self.write('<br/>' + self.help_doc)
        self.finish()