def handle(self, *args, **options): try: #import import_sp_excel( options['site'], options['file'], options['location'], options['location_desc'], options['userid'], options['username']) except Exception,e: print exception_stuck()
def do_job(self, job_data): try: args=json.loads(job_data) with open(args['log_file'],'at') as lf: lf.write('===new task===\n[%s]start import site:%s\'s data...\n'%( NowTime(),args['site'] )) lf.close() #import import_sp_excel(args['site'], args['file'], args['location'], args['location_desc'], args['userid'], args['username']) with open(args['log_file'],'at') as lf: lf.write('[%s]end import site:%s\'s data...\n'%( NowTime(),args['site'] )) lf.close() #need update station info? if args['need_update_station_info']: with open(args['log_file'],'at') as lf: lf.write('[%s]start update site:%s info...\n'%( NowTime(),args['site'] )) lf.close() nb_guns=get_nb_guns_of_station(args['site']) guns_id=get_guns_id_by_site(args['site']) update_station_info( args['site'], args['site_desc'], args['locid'], nb_guns, None,#phone None,#address None,#brand None,#distance guns_id ) with open(args['log_file'],'at') as lf: lf.write('[%s]end update site:%s info...\n'%( NowTime(),args['site'] )) lf.close() #计算相关性 with open(args['log_file'],'at') as lf: lf.write('[%s]start compute assoc on site:%s...\n'%( NowTime(),args['site'] )) lf.close() call_command('compute_item_assoc',interactive=False,period=0,site=args['site']) call_command('compute_item_assoc',interactive=False,period=1,site=args['site']) call_command('compute_item_assoc',interactive=False,period=2,site=args['site']) call_command('compute_item_assoc',interactive=False,period=3,site=args['site']) with open(args['log_file'],'at') as lf: lf.write('[%s]%s\n' %(NowTime(),args['import_flag_string'])) lf.write('[%s]end compute assoc on site:%s...\n===finish task===\n'%( NowTime(),args['site'] )) lf.close() except Exception,e: with open(args['log_file'],'at') as lf: lf.write('[%s]%s\n' %(NowTime(),args['import_flag_string'])) lf.write('[%s]handle task error:%s\n===finish task===\n'%( NowTime(),str(e) )) lf.close() gearman_logger.error('gearman error: '+str(e)) gearman_logger.error('stack:'+exception_stuck())