- Timestamp:
- 06/12/13 11:14:57 (11 years ago)
- Location:
- trunk/Monitoring
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Monitoring/Analyze/analyze
r859 r876 21 21 from datetime import datetime 22 22 23 from smon import repo_io 23 24 # line below is to include "smon" package in the search path 25 sys.path.append("/home/jripsl/snapshot/Monitoring") 26 27 import smon.repo_io as repo_io 28 import smon.types as types 24 29 25 30 26 27 """28 Code list reminder29 30 0000 (la simulation démarre)31 1000 (le job d'une simulation démarre)32 2000 (PushStack)33 3000 (PopStack OK)34 9000 (PopStack NOK)35 9999 (FATAL)36 """37 31 38 32 class CheckList(): … … 52 46 diff=current_time-msg_time 53 47 48 # debug 49 print "diff=%s"%diff 54 50 55 51 if diff>cls.max_time_between_msg: … … 68 64 changing the simulation status 69 65 """ 70 running_simulations=repo_io.get_running_simulations() 71 for simulation in running_simulations: 72 message=repo_io.retrieve_last_messages(simulation) 66 67 68 for simulation in repo_io.get_running_simulations(): 69 70 print "checking heartbeat for '%s'"%simulation.name 71 72 try: 73 74 message=repo_io.retrieve_last_message(simulation) 75 except types.MessageNotFoundException, e: 76 77 continue 78 73 79 74 80 if msg_timeout(message): 75 81 76 repo_io.update_simulation_status(simulation) #from "running" to "killed" 82 simulation.status="error" 83 84 repo_io.update_simulation_status(simulation) 85 86 print "heartbeat NOK (simulation status set to 'error')"%simulation.name 87 88 89 else: 90 print "heartbeat OK"%simulation.name 77 91 78 92 class Analyzer(): … … 80 94 @classmethod 81 95 def start(cls): 82 pass 96 repo_io.init() # open DB connection 97 98 Analyzer.main() 83 99 84 100 @classmethod 85 101 def stop(cls): 86 pass102 repo_io.free() # close DB connection 87 103 88 104 @classmethod … … 104 120 print ' [*] Analyzer running. To exit press CTRL+C' 105 121 106 CheckList.C0001() 122 while True: 123 124 print "checking simulations heartbeats" 125 126 CheckList.C0001() 107 127 108 128 109 sleep(10)129 time.sleep(1) 110 130 111 131 """ … … 115 135 def signal_handler(signal, frame): 116 136 print 'You pressed Ctrl+C!' 137 138 Analyzer.stop() 139 117 140 sys.exit(0) 118 141 … … 122 145 123 146 try: 124 Analyzer. main()147 Analyzer.start() 125 148 126 149 sys.exit(0) -
trunk/Monitoring/Watch/watch
r875 r876 100 100 101 101 if message.file is not None: 102 print "%s %s %s \n"%(message.code,message.jobid,message.file)102 print "%s %s %s %s %s\n"%(message.code,message.jobid,message.command,message.timestamp,message.file) 103 103 else: 104 print "%s %s \n"%(message.code,message.jobid)104 print "%s %s %s %s\n"%(message.code,message.jobid,message.command,message.timestamp) 105 105 106 106 @classmethod 107 107 def log(cls,message): 108 108 with open("/home/jripsl/supervisor/log/supervisor.log", "a") as log_file: 109 log_file.write("%s %s %s \n"%(datetime.now().strftime('%Y%m%d_%H%M%S'), message.code,message.jobid))109 log_file.write("%s %s %s %s %s\n"%(datetime.now().strftime('%Y%m%d_%H%M%S'), message.code,message.jobid,message.timestamp,message.command)) 110 110 111 111 @classmethod … … 127 127 128 128 # debug 129 mapping = { "0000":["log", " print_stdout", "crea_sim"],130 "0100":["log", " print_stdout", "set_sim_status_to_complete"],131 "1000":["log", " print_stdout"],132 "1100":["log", " print_stdout"],133 "2000":["log", " print_stdout"],134 "3000":["log", " print_stdout"],129 mapping = { "0000":["log", "store_msg", "print_stdout", "crea_sim"], 130 "0100":["log", "store_msg", "print_stdout", "set_sim_status_to_complete"], 131 "1000":["log", "store_msg", "print_stdout"], 132 "1100":["log", "store_msg", "print_stdout"], 133 "2000":["log", "store_msg", "print_stdout"], 134 "3000":["log", "store_msg", "print_stdout"], 135 135 "8888":["cleanup"], 136 "9000":["log", " print_stdout"],137 "9999":["log", " print_stdout", "set_sim_status_to_error"] }136 "9000":["log", "store_msg", "print_stdout"], 137 "9999":["log", "store_msg", "print_stdout", "set_sim_status_to_error"] } 138 138 139 139 # prod -
trunk/Monitoring/libIGCM_mock/libIGCM_mock.sh
r875 r876 230 230 read -p "<<< $l__JSON_msg_buf >>>> sent. Press enter for next message" bla 231 231 else 232 echo "<<< $l__JSON_msg_buf .>>>>" 232 233 sleep $g__delay 233 234 fi -
trunk/Monitoring/libIGCM_mock/scenario/start_simu__fatal_error__stop_simu
r875 r876 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 file=config.card.base642 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9000 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9999 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 timestamp=2013-06-11-15:26:28 file=config.card.base64 2 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 timestamp=2013-06-11-15:26:28 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 timestamp=2013-06-11-15:26:28 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9000 timestamp=2013-06-11-15:26:28 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9999 timestamp=2013-06-11-15:26:28 6 6 -
trunk/Monitoring/libIGCM_mock/scenario/start_simu__nonfatal_errors__stop_simu
r875 r876 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 file=config.card.base642 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 6 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 timestamp=2013-06-11-15:26:28 file=config.card.base64 2 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 timestamp=2013-06-11-15:26:28 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 timestamp=2013-06-11-15:26:28 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 timestamp=2013-06-11-15:26:28 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 timestamp=2013-06-11-15:26:28 6 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 timestamp=2013-06-11-15:26:28 -
trunk/Monitoring/libIGCM_mock/scenario/start_simu__simu_killed
r875 r876 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 file=config.card.base642 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 timestamp=2013-06-11-15:26:28 file=config.card.base64 2 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 timestamp=2013-06-11-15:26:28 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 timestamp=2013-06-11-15:26:28 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 timestamp=2013-06-11-15:26:28 -
trunk/Monitoring/libIGCM_mock/scenario/start_simu__simu_segfault
r875 r876 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 file=config.card.base642 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9000 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9999 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 timestamp=2013-06-11-15:26:28 file=config.card.base64 2 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 timestamp=2013-06-11-15:26:28 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 timestamp=2013-06-11-15:26:28 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9000 timestamp=2013-06-11-15:26:28 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=9999 timestamp=2013-06-11-15:26:28 6 6 -
trunk/Monitoring/libIGCM_mock/scenario/start_simu__start_second_simu_with_same_name
r875 r876 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 file=config.card.base642 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 6 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 7 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 file=config.card.base648 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 9 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 10 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 11 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 12 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 timestamp=2013-06-11-15:26:28 file=config.card.base64 2 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 timestamp=2013-06-11-15:26:28 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 timestamp=2013-06-11-15:26:28 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 timestamp=2013-06-11-15:26:28 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 timestamp=2013-06-11-15:26:28 6 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 timestamp=2013-06-11-15:26:28 7 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 timestamp=2013-06-11-15:26:28 file=config.card.base64 8 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 timestamp=2013-06-11-15:26:28 9 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 timestamp=2013-06-11-15:26:28 10 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 timestamp=2013-06-11-15:26:28 11 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 timestamp=2013-06-11-15:26:28 12 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 timestamp=2013-06-11-15:26:28 -
trunk/Monitoring/libIGCM_mock/scenario/start_simu__stop_simu
r875 r876 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 file=config.card.base642 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 6 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 1 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0000 timestamp=2013-06-11-15:26:28 file=config.card.base64 2 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1000 timestamp=2013-06-11-15:26:28 3 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=2000 timestamp=2013-06-11-15:26:28 4 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=3000 timestamp=2013-06-11-15:26:28 5 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=1100 timestamp=2013-06-11-15:26:28 6 simuid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE jobid=BIGBRO.clim.TEST.LMDZOR.p86denv.TGCC.CURIE.1 code=0100 timestamp=2013-06-11-15:26:28 -
trunk/Monitoring/smon/local_repo.py
r875 r876 59 59 _conn.execute("create unique index if not exists idx_simulation_1 on simulation (name)") 60 60 61 _conn.execute("create table if not exists message (id INTEGER PRIMARY KEY, simulation_id TEXT )") # TODO: check how to use INT datatype for simulation_id column61 _conn.execute("create table if not exists message (id INTEGER PRIMARY KEY, simulation_id TEXT, body TEXT, crea_date TEXT)") # TODO: check how to use INT datatype for simulation_id column 62 62 63 63 def cleanup(): … … 84 84 rs=c.fetchone() 85 85 while rs is not None: 86 li.append(types.Simulation(name=rs[0],id=rs[1],status=rs[2])) 86 87 s=types.Simulation(name=rs[0],id=rs[1],status=rs[2]) 88 89 li.append(s) 90 91 87 92 rs=c.fetchone() 88 93 … … 136 141 137 142 def create_message(message): 138 _conn.execute("insert into message (simulation_id) values (?)",(message.simuid,)) 143 144 _conn.execute("insert into message (simulation_id,crea_date) values (?,?)",(message.simuid, message.timestamp)) 139 145 140 146 _conn.commit() … … 143 149 c=_conn.cursor() 144 150 145 _conn.execute("select id, content from message where simulation_id=? order by iddesc limit 1",(simulation.id,))151 _conn.execute("select id, simulation_id, body, crea_date from message where simulation_id=? order by crea_date desc limit 1",(simulation.id,)) 146 152 147 153 rs=c.fetchone() 148 154 149 155 if rs is None: 150 raise Exception()156 raise types.MessageNotFoundException() 151 157 152 return types.Message(id=rs[0] )158 return types.Message(id=rs[0],simulation_id=rs[1],body=rs[2],timestamp=rs[3]) -
trunk/Monitoring/smon/repo_io.py
r875 r876 300 300 running_simulation=[] 301 301 302 for s in retrieve_simulation ():302 for s in retrieve_simulations(): 303 303 if s.status=="running": 304 304 running_simulation.append(s) -
trunk/Monitoring/smon/types.py
r875 r876 28 28 return ",".join(['%s=%s'%(k,str(v)) for (k,v) in self.__dict__.iteritems()]) 29 29 30 class MessageNotFoundException(SMONException): 31 pass 32 30 33 class Tree(): 31 34 … … 43 46 self.status=kw.get("status") 44 47 self.name=kw.get("name") 48 self.id=kw.get("id") 45 49 46 50 def __str__(self): … … 49 53 class Message(): 50 54 file=None 55 simuid=None 56 jobid=None 57 timestamp=None 58 command=None 51 59 52 60 def __init__(self,JSON_KW):
Note: See TracChangeset
for help on using the changeset viewer.