@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all stores |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of store_energy_input_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_stores " |
|
43 | " ORDER BY id ") |
|
44 | rows_stores = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_stores is None or len(rows_stores) == 0: |
|
47 | print("There isn't any stores ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | store_list = list() |
|
53 | for row in rows_stores: |
|
54 | store_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of store_energy_input_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all stores in MyEMS System Database") |
|
68 | ||
69 | # shuffle the store list for randomly calculating the meter hourly value |
|
70 | random.shuffle(store_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, store_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all equipments |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of equipment_energy_input_item.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_equipments " |
|
43 | " ORDER BY id ") |
|
44 | rows_equipments = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_equipments is None or len(rows_equipments) == 0: |
|
47 | print("There isn't any equipments ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | equipment_list = list() |
|
53 | for row in rows_equipments: |
|
54 | equipment_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of equipment_energy_input_item.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all equipments in MyEMS System Database") |
|
68 | ||
69 | # shuffle the equipment list for randomly calculating the meter hourly value |
|
70 | random.shuffle(equipment_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, equipment_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all tenants |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of tenant_energy_input_item.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_tenants " |
|
43 | " ORDER BY id ") |
|
44 | rows_tenants = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_tenants is None or len(rows_tenants) == 0: |
|
47 | print("There isn't any tenants ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | tenant_list = list() |
|
53 | for row in rows_tenants: |
|
54 | tenant_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of tenant_energy_input_item.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all tenants in MyEMS System Database") |
|
68 | ||
69 | # shuffle the tenant list for randomly calculating the meter hourly value |
|
70 | random.shuffle(tenant_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, tenant_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all spaces |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of space_energy_input_item.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_spaces " |
|
43 | " ORDER BY id ") |
|
44 | rows_spaces = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_spaces is None or len(rows_spaces) == 0: |
|
47 | print("There isn't any spaces ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | space_list = list() |
|
53 | for row in rows_spaces: |
|
54 | space_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of space_energy_input_item.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all spaces in MyEMS System Database") |
|
68 | ||
69 | # shuffle the space list for randomly calculating the meter hourly value |
|
70 | random.shuffle(space_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, space_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all spaces |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of space_energy_output_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_spaces " |
|
43 | " ORDER BY id ") |
|
44 | rows_spaces = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_spaces is None or len(rows_spaces) == 0: |
|
47 | print("There isn't any spaces ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | space_list = list() |
|
53 | for row in rows_spaces: |
|
54 | space_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of space_energy_output_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all spaces in MyEMS System Database") |
|
68 | ||
69 | # shuffle the space list for randomly calculating the meter hourly value |
|
70 | random.shuffle(space_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, space_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all equipments |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of equipment_energy_input_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_equipments " |
|
43 | " ORDER BY id ") |
|
44 | rows_equipments = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_equipments is None or len(rows_equipments) == 0: |
|
47 | print("There isn't any equipments ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | equipment_list = list() |
|
53 | for row in rows_equipments: |
|
54 | equipment_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of equipment_energy_input_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all equipments in MyEMS System Database") |
|
68 | ||
69 | # shuffle the equipment list for randomly calculating the meter hourly value |
|
70 | random.shuffle(equipment_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, equipment_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all combined equipments |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of combined_equipment_energy_input_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_combined_equipments " |
|
43 | " ORDER BY id ") |
|
44 | rows_combined_equipments = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_combined_equipments is None or len(rows_combined_equipments) == 0: |
|
47 | print("There isn't any combined equipments ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | combined_equipment_list = list() |
|
53 | for row in rows_combined_equipments: |
|
54 | combined_equipment_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of combined_equipment_energy_input_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all combined equipments in MyEMS System Database") |
|
68 | ||
69 | # shuffle the combined equipment list for randomly calculating the meter hourly value |
|
70 | random.shuffle(combined_equipment_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, combined_equipment_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all spaces |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of space_energy_input_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_spaces " |
|
43 | " ORDER BY id ") |
|
44 | rows_spaces = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_spaces is None or len(rows_spaces) == 0: |
|
47 | print("There isn't any spaces ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | space_list = list() |
|
53 | for row in rows_spaces: |
|
54 | space_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of space_energy_input_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all spaces in MyEMS System Database") |
|
68 | ||
69 | # shuffle the space list for randomly calculating the meter hourly value |
|
70 | random.shuffle(space_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, space_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all stores |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of store_energy_input_item.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_stores " |
|
43 | " ORDER BY id ") |
|
44 | rows_stores = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_stores is None or len(rows_stores) == 0: |
|
47 | print("There isn't any stores ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | store_list = list() |
|
53 | for row in rows_stores: |
|
54 | store_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of store_energy_input_item.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all stores in MyEMS System Database") |
|
68 | ||
69 | # shuffle the store list for randomly calculating the meter hourly value |
|
70 | random.shuffle(store_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, store_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all combined equipments |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of combined_equipment_energy_input_item.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_combined_equipments " |
|
43 | " ORDER BY id ") |
|
44 | rows_combined_equipments = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_combined_equipments is None or len(rows_combined_equipments) == 0: |
|
47 | print("There isn't any combined equipments ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | combined_equipment_list = list() |
|
53 | for row in rows_combined_equipments: |
|
54 | combined_equipment_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of combined_equipment_energy_input_item.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all combined equipments in MyEMS System Database") |
|
68 | ||
69 | # shuffle the combined equipment list for randomly calculating the meter hourly value |
|
70 | random.shuffle(combined_equipment_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, combined_equipment_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all shopfloors |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of shopfloor_energy_input_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_shopfloors " |
|
43 | " ORDER BY id ") |
|
44 | rows_shopfloors = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_shopfloors is None or len(rows_shopfloors) == 0: |
|
47 | print("There isn't any shopfloors ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | shopfloor_list = list() |
|
53 | for row in rows_shopfloors: |
|
54 | shopfloor_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of shopfloor_energy_input_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all shopfloors in MyEMS System Database") |
|
68 | ||
69 | # shuffle the shopfloor list for randomly calculating the meter hourly value |
|
70 | random.shuffle(shopfloor_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, shopfloor_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all equipments |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of equipment_energy_output_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_equipments " |
|
43 | " ORDER BY id ") |
|
44 | rows_equipments = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_equipments is None or len(rows_equipments) == 0: |
|
47 | print("There isn't any equipments ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | equipment_list = list() |
|
53 | for row in rows_equipments: |
|
54 | equipment_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of equipment_energy_output_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all equipments in MyEMS System Database") |
|
68 | ||
69 | # shuffle the equipment list for randomly calculating the meter hourly value |
|
70 | random.shuffle(equipment_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, equipment_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all tenants |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of tenant_energy_input_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_tenants " |
|
43 | " ORDER BY id ") |
|
44 | rows_tenants = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_tenants is None or len(rows_tenants) == 0: |
|
47 | print("There isn't any tenants ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | tenant_list = list() |
|
53 | for row in rows_tenants: |
|
54 | tenant_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of tenant_energy_input_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all tenants in MyEMS System Database") |
|
68 | ||
69 | # shuffle the tenant list for randomly calculating the meter hourly value |
|
70 | random.shuffle(tenant_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, tenant_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all combined equipments |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of combined_equipment_energy_output_category.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_combined_equipments " |
|
43 | " ORDER BY id ") |
|
44 | rows_combined_equipments = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_combined_equipments is None or len(rows_combined_equipments) == 0: |
|
47 | print("There isn't any combined equipments ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | combined_equipment_list = list() |
|
53 | for row in rows_combined_equipments: |
|
54 | combined_equipment_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of combined_equipment_energy_output_category.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all combined equipments in MyEMS System Database") |
|
68 | ||
69 | # shuffle the combined equipment list for randomly calculating the meter hourly value |
|
70 | random.shuffle(combined_equipment_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, combined_equipment_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |
@@ 17-86 (lines=70) @@ | ||
14 | ######################################################################################################################## |
|
15 | ||
16 | ||
17 | def main(logger): |
|
18 | ||
19 | while True: |
|
20 | # the outermost while loop |
|
21 | ################################################################################################################ |
|
22 | # Step 1: get all shopfloors |
|
23 | ################################################################################################################ |
|
24 | cnx_system_db = None |
|
25 | cursor_system_db = None |
|
26 | try: |
|
27 | cnx_system_db = mysql.connector.connect(**config.myems_system_db) |
|
28 | cursor_system_db = cnx_system_db.cursor() |
|
29 | except Exception as e: |
|
30 | logger.error("Error in step 1.1 of shopfloor_energy_input_item.main " + str(e)) |
|
31 | if cursor_system_db: |
|
32 | cursor_system_db.close() |
|
33 | if cnx_system_db: |
|
34 | cnx_system_db.close() |
|
35 | # sleep and continue the outer loop to reconnect the database |
|
36 | time.sleep(60) |
|
37 | continue |
|
38 | print("Connected to MyEMS System Database") |
|
39 | ||
40 | try: |
|
41 | cursor_system_db.execute(" SELECT id, name " |
|
42 | " FROM tbl_shopfloors " |
|
43 | " ORDER BY id ") |
|
44 | rows_shopfloors = cursor_system_db.fetchall() |
|
45 | ||
46 | if rows_shopfloors is None or len(rows_shopfloors) == 0: |
|
47 | print("There isn't any shopfloors ") |
|
48 | # sleep and continue the outer loop to reconnect the database |
|
49 | time.sleep(60) |
|
50 | continue |
|
51 | ||
52 | shopfloor_list = list() |
|
53 | for row in rows_shopfloors: |
|
54 | shopfloor_list.append({"id": row[0], "name": row[1]}) |
|
55 | ||
56 | except Exception as e: |
|
57 | logger.error("Error in step 1.2 of shopfloor_energy_input_item.main " + str(e)) |
|
58 | # sleep and continue the outer loop to reconnect the database |
|
59 | time.sleep(60) |
|
60 | continue |
|
61 | finally: |
|
62 | if cursor_system_db: |
|
63 | cursor_system_db.close() |
|
64 | if cnx_system_db: |
|
65 | cnx_system_db.close() |
|
66 | ||
67 | print("Got all shopfloors in MyEMS System Database") |
|
68 | ||
69 | # shuffle the shopfloor list for randomly calculating the meter hourly value |
|
70 | random.shuffle(shopfloor_list) |
|
71 | ||
72 | ################################################################################################################ |
|
73 | # Step 2: Create multiprocessing pool to call worker in parallel |
|
74 | ################################################################################################################ |
|
75 | p = Pool(processes=config.pool_size) |
|
76 | error_list = p.map(worker, shopfloor_list) |
|
77 | p.close() |
|
78 | p.join() |
|
79 | ||
80 | for error in error_list: |
|
81 | if error is not None and len(error) > 0: |
|
82 | logger.error(error) |
|
83 | ||
84 | print("go to sleep 300 seconds...") |
|
85 | time.sleep(300) |
|
86 | print("wake from sleep, and continue to work...") |
|
87 | # end of outer while |
|
88 | ||
89 |