Index: leahi_dialin/dd/modules/alarms.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/alarms.py (.../alarms.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/alarms.py (.../alarms.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -17,7 +17,7 @@ # Module imports from logging import Logger import struct - +import time # Project imports from leahi_dialin.common.alarm_defs import AlarmList from leahi_dialin.common.constants import NO_RESET @@ -68,6 +68,7 @@ self.last_alarm_triggered = 0 #: The timestamp when did the last alarm triggered self.last_alarm_data_1 = 0.0 #: The last Alarm's data part 1 self.last_alarm_data_2 = 0.0 #: The last Alarm's data part 2 + self.handler_execution_times = [] @publish(["msg_id_dd_alarm_triggered", "alarm_states", "alarm_conditions", "alarm_data", @@ -79,6 +80,7 @@ @param message: published DD alarm activation message @return: none """ + start = time.perf_counter() result = {} msg_list = [] msg_list.append(('alarm_id', DataTypes.U32)) @@ -114,6 +116,7 @@ self.last_alarm_data_1 = result['data_1'] self.last_alarm_data_2 = result['data_2'] self.dd_alarm_triggered_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) @publish(["msg_id_dd_alarm_info", "alarm_safety_shutdown_status", "dd_alarm_info_timestamp"]) Index: leahi_dialin/dd/modules/balancing_chamber.py =================================================================== diff -u -rf1b8b4e9558e9cb95b994044f1d7d247c6c8be3f -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/balancing_chamber.py (.../balancing_chamber.py) (revision f1b8b4e9558e9cb95b994044f1d7d247c6c8be3f) +++ leahi_dialin/dd/modules/balancing_chamber.py (.../balancing_chamber.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,7 +16,7 @@ # Module imports from logging import Logger - +import time # Project imports from leahi_dialin.common.constants import NO_RESET from leahi_dialin.common.generic_defs import DataTypes @@ -59,8 +59,8 @@ self.bal_chamber_switch_only_state = 0 #: The Balancing Chamber's switch only state self.is_bal_chamber_switching_active = 0 #: Is Balancing Chamber Switching Active self.dd_bal_chamber_timestamp = 0 #: The timestamp of the last message + self.handler_execution_times = [] - @publish(["msg_id_dd_bal_chamber_data", "execution_state", "switching_state", "switching_frequency", @@ -75,6 +75,7 @@ @param message: published balancing chamber data message @return: None """ + start = time.perf_counter() msg_list = [] msg_list.append(('self.execution_state', DataTypes.U32)) msg_list.append(('self.switching_state', DataTypes.U32)) @@ -90,8 +91,8 @@ message = message) self.dd_bal_chamber_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) - def cmd_balancing_chamber_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: """ Constructs and sends the balancing chamber data broadcast interval override command Index: leahi_dialin/dd/modules/blood_leak.py =================================================================== diff -u -rf1b8b4e9558e9cb95b994044f1d7d247c6c8be3f -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/blood_leak.py (.../blood_leak.py) (revision f1b8b4e9558e9cb95b994044f1d7d247c6c8be3f) +++ leahi_dialin/dd/modules/blood_leak.py (.../blood_leak.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -17,7 +17,7 @@ # Module imports from logging import Logger from enum import unique - +import time # Project imports from leahi_dialin.common.constants import NO_RESET from leahi_dialin.common import dd_enum_repository @@ -89,6 +89,7 @@ self.blood_leak_upper_range_drift_status = 0 #: The Blood leak upper range drift status self.blood_leak_time_elapsed_since_last_drift_zero_ms = 0 #: The Elapsed time since the last zeroing in ms + self.handler_execution_times = [] for cmd in EmbModeCommands.__members__: # Initialize all the embedded mode commands self.blood_leak_emb_mode_cmds[cmd] = '' @@ -142,6 +143,7 @@ @param message: published blood leak status message @return: None """ + start = time.perf_counter() msg_list =[] msg_list.append(('self.blood_leak_status', DataTypes.U32)) msg_list.append(('self.blood_leak_state', DataTypes.U32)) @@ -157,6 +159,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) self.dd_blood_leak_status_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) @publish(['msg_id_dd_send_blood_leak_emb_mode_response', 'blood_leak_emb_mode_cmd_response', Index: leahi_dialin/dd/modules/conductivity_sensors.py =================================================================== diff -u -rb587077b5d61033e25b2aa372bc04e221bc77a6f -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision b587077b5d61033e25b2aa372bc04e221bc77a6f) +++ leahi_dialin/dd/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -108,6 +109,7 @@ }, } + self.handler_execution_times = [] @publish(["msg_id_dd_conductivity_data", "dd_conductivity", "dd_conductivity_timestamp"]) def _handler_conductivity_sensors_sync(self, message, timestamp=0.0): @@ -118,6 +120,7 @@ @param message: published DD conductivity sensor data message @return: None """ + start = time.perf_counter() sensor_list =[] sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D17_COND.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D27_COND.name, DataTypes.F32)) @@ -129,6 +132,7 @@ decoder_list = sensor_list, message = message) self.dd_conductivity_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) @publish(["msg_id_dd_conductivity_resistance_data", "dd_conductivity_resistance", "dd_conductivity_resistance_timestamp"]) def _handler_conductivity_resistance_sync(self, message, timestamp=0.0): Index: leahi_dialin/dd/modules/drybicart.py =================================================================== diff -u -r4fc29aead7deff5ba3ddb4c9e1290fc0d5b2b6e8 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/drybicart.py (.../drybicart.py) (revision 4fc29aead7deff5ba3ddb4c9e1290fc0d5b2b6e8) +++ leahi_dialin/dd/modules/drybicart.py (.../drybicart.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET , RESET @@ -66,6 +67,7 @@ self.dd_dryBiCartDrainTimePeriod = 0 #: The Dry Bicart drain time period in sec self.dd_dry_bicart_timestamp = 0 #: The timestamp of the last message + self.handler_execution_times = [] @publish(["msg_id_dd_dry_bicart_data", "dd_dry_bicart_fill_execution_state", "dd_bicarb_chamber_fill_execution_state", "dd_dry_bicart_drain_execution_state", @@ -80,6 +82,7 @@ @param message: published dry bicart data message @return: None """ + start = time.perf_counter() msg_list = [] msg_list.append(('self.dd_dry_bicart_fill_execution_state', DataTypes.U32)) msg_list.append(('self.dd_bicarb_chamber_fill_execution_state', DataTypes.U32)) @@ -98,6 +101,7 @@ message = message) self.dd_dry_bicart_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_dry_bicart_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/dd/modules/events.py =================================================================== diff -u -r8b54f610f3b5c0610bea0a481b892e8c70935765 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/events.py (.../events.py) (revision 8b54f610f3b5c0610bea0a481b892e8c70935765) +++ leahi_dialin/dd/modules/events.py (.../events.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -18,6 +18,7 @@ import struct from logging import Logger from datetime import datetime +import time # Project imports from leahi_dialin.common import dd_enum_repository @@ -78,7 +79,9 @@ for event in dd_enum_repository.DDEventList: self._event_dictionary[dd_enum_repository.DDEventList(event).name] = [] + self.handler_execution_times = [] + def get_dd_nth_event(self, event_id, event_number=0): """ Returns the nth requested DD event @@ -146,6 +149,7 @@ @param message: published DD events data message @returns none """ + start = time.perf_counter() event_data_1 = 0 event_data_2 = 0 op_mode = 0 @@ -288,6 +292,7 @@ # Update event dictionary self._event_dictionary[event_enum.name].append(event_tuple) self.events_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) Index: leahi_dialin/dd/modules/gen_dialysate.py =================================================================== diff -u -rf1b8b4e9558e9cb95b994044f1d7d247c6c8be3f -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/gen_dialysate.py (.../gen_dialysate.py) (revision f1b8b4e9558e9cb95b994044f1d7d247c6c8be3f) +++ leahi_dialin/dd/modules/gen_dialysate.py (.../gen_dialysate.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -55,6 +56,7 @@ self.dialysate_good_to_deliver = 0 #: The Dialysate is good to delover or not self.target_qd = 0.0 #: The Target Qd + self.handler_execution_times = [] @publish(["msg_id_dd_gen_dialysate_mode_data", "execution_state", "dialysate_delivery_in_progress", @@ -68,6 +70,7 @@ @param message: published gen dialysate data message @return: None """ + start = time.perf_counter() msg_list = [] msg_list.append(('self.execution_state', DataTypes.U32)) msg_list.append(('self.dialysate_delivery_in_progress', DataTypes.U32)) @@ -77,6 +80,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) self.dd_gen_dialysate_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_gen_dialysate_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/dd/modules/levels.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/levels.py (.../levels.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/levels.py (.../levels.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -58,6 +59,7 @@ dd_enum_repository.DDLevelSensorNames.D6_LEVEL.name: 0, } self.dd_bicarb_level = 0 #: The Bicarb level + self.handler_execution_times = [] @publish(["msg_id_dd_level_data", "dd_level_sensors", "dd_bicarb_level", "dd_levels_timestamp"]) @@ -68,6 +70,7 @@ @param message: published levels data message @returns none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((dd_enum_repository.DDLevelSensorNames.D46_LEVEL.name, DataTypes.U32)) sensor_list.append((dd_enum_repository.DDLevelSensorNames.D63_LEVEL.name, DataTypes.U32)) @@ -83,6 +86,7 @@ message = message, start_from_byte = len(sensor_list) * DataTypes.U32.size()) self.dd_levels_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_levels_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/dd/modules/post_gen_dialysate.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/post_gen_dialysate.py (.../post_gen_dialysate.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/post_gen_dialysate.py (.../post_gen_dialysate.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -50,6 +51,7 @@ self.post_gen_state_timestamp = 0 #: The timestamp of the latest message self.execution_state = 0 #: The execution state + self.handler_execution_times = [] @publish(["msg_id_dd_post_gen_dialysate_state_data", "execution_state", "post_gen_state_timestamp"]) @@ -60,12 +62,14 @@ @param message: published post gen dialysate data message @return: None """ + start = time.perf_counter() msg_list =[] msg_list.append(('self.execution_state', DataTypes.U32)) self.process_into_vars(decoder_list = msg_list, message = message) self.post_gen_state_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_post_gen_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/dd/modules/pre_gen_dialysate.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/pre_gen_dialysate.py (.../pre_gen_dialysate.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/pre_gen_dialysate.py (.../pre_gen_dialysate.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -61,6 +62,7 @@ self.pre_gen_dial_temp = 0.0 #: The Pre-Gen dialysate temperature self.pre_gen_acid = 0 #: The Pre-Gen acid concentrate option index self.pre_gen_bicarb = 0 #: The Pre-Gen bicarb concentrate option index + self.handler_execution_times = [] @publish(["msg_id_dd_pre_gen_dialysate_state_data", "execution_state", "pre_gen_state_timestamp"]) @@ -71,13 +73,15 @@ @param message: published pre gen dialysate data message @return: None """ + start = time.perf_counter() msg_list =[] msg_list.append(('self.execution_state', DataTypes.U32)) self.process_into_vars(decoder_list = msg_list, message = message) self.pre_gen_state_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) @publish(["msg_id_dd_pre_gen_dialysate_request_data", Index: leahi_dialin/dd/modules/pressure_sensors.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -58,6 +59,7 @@ dd_enum_repository.DDPressureSensorNames.D41_PRES.name: 0.0, dd_enum_repository.DDPressureSensorNames.D87_PRES.name: 0.0 } + self.handler_execution_times = [] @publish(["msg_id_dd_pressures_data", "dd_pressures", "dd_pressures_timestamp"]) @@ -69,6 +71,7 @@ @param message: published DD pressure data message @return: none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((dd_enum_repository.DDPressureSensorNames.D9_PRES.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDPressureSensorNames.D66_PRES.name, DataTypes.F32)) @@ -81,8 +84,8 @@ decoder_list = sensor_list, message = message) self.dd_pressures_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) - def cmd_pressure_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: """ Constructs and sends the pressure broadcast interval override command. Index: leahi_dialin/dd/modules/rinse_pump.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/rinse_pump.py (.../rinse_pump.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/rinse_pump.py (.../rinse_pump.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -53,6 +54,7 @@ self.d79_state = 0 #: The State of the D79 Pump self.d79_pump_pwm = 0.0 #: The PWM of the D79 Pump self.d79_pump_rpm = 0 #: The RPM of the D79 Pump + self.handler_execution_times = [] @publish(["msg_id_dd_rinse_pump_data", @@ -65,6 +67,7 @@ @param message: published rinse pump data message @return: None """ + start = time.perf_counter() msg_list =[] msg_list.append(('self.d79_state', DataTypes.U32)) msg_list.append(('self.d79_pump_pwm', DataTypes.F32)) @@ -73,6 +76,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) self.dd_rinse_pump_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_rinse_pump_data_publish_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/dd/modules/spent_chamber_fill.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/spent_chamber_fill.py (.../spent_chamber_fill.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/spent_chamber_fill.py (.../spent_chamber_fill.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -52,6 +53,7 @@ self.execution_state = 0 #: The execution state self.switching_period = 0 #: The switching period self.total_spent_chamber_fill_counter = 0 #: The total spent chamber fill counter + self.handler_execution_times = [] @publish(["msg_id_dd_spent_chamber_fill_data", @@ -65,6 +67,7 @@ @param message: published spent chamber fill data message @return: None """ + start = time.perf_counter() msg_list =[] msg_list.append(('self.execution_state', DataTypes.U32)) msg_list.append(('self.switching_period', DataTypes.U32)) @@ -73,6 +76,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) self.dd_spent_chamber_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_spent_chamber_fill_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/dd/modules/substitution_pump.py =================================================================== diff -u -r7867a1799d96a5803a80c1914b30e34d6a9ee8b7 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/substitution_pump.py (.../substitution_pump.py) (revision 7867a1799d96a5803a80c1914b30e34d6a9ee8b7) +++ leahi_dialin/dd/modules/substitution_pump.py (.../substitution_pump.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -15,7 +15,7 @@ ############################################################################ # Module imports -import struct +import time from logging import Logger # Project imports @@ -61,6 +61,7 @@ } } self.dd_substitution_pump_timestamp = 0 #: The timestamp of the latest message + self.handler_execution_times = [] @publish(["msg_id_dd_rinse_pump_data", "dd_substitution_pumps", @@ -72,6 +73,7 @@ @param message: published substitution pump data message @return: None """ + start = time.perf_counter() substitution_pump_list = [] substitution_pump_list.append((dd_enum_repository.DDSubstitutionPumpNames.D92_PUMP.name, dd_enum_repository.DDSubstitutionPumpAttributes.TARGET_SPEED.name, DataTypes.F32)) substitution_pump_list.append((dd_enum_repository.DDSubstitutionPumpNames.D92_PUMP.name, dd_enum_repository.DDSubstitutionPumpAttributes.CURRENT_SPEED.name, DataTypes.F32)) @@ -83,6 +85,7 @@ message = message) self.dd_substitution_pump_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_substitution_pump_data_publish_interval_override(self, ms: int, reset: int = NO_RESET) -> int: """ Index: leahi_dialin/dd/modules/ultrafiltration.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/ultrafiltration.py (.../ultrafiltration.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/ultrafiltration.py (.../ultrafiltration.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -53,6 +54,7 @@ self.uf_rate = 0.0 #: The Ultrafiltration rate self.compensated_uf_rate = 0.0 #: The Compensated Ultrafiltration rate self.is_uf_requested = 0 #: Is Ultrafiltration requested or not + self.handler_execution_times = [] @publish(["msg_id_dd_uf_data", "uf_exec_state","uf_rate", @@ -65,6 +67,7 @@ @param message: published ultrafiltration data message @return: None """ + start = time.perf_counter() msg_list =[] msg_list.append(('self.uf_exec_state', DataTypes.U32)) msg_list.append(('self.uf_rate', DataTypes.F32)) @@ -74,6 +77,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) self.uf_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_uf_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/dd/modules/valves.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/dd/modules/valves.py (.../valves.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/dd/modules/valves.py (.../valves.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -18,6 +18,7 @@ from collections import OrderedDict from logging import Logger import struct +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -110,6 +111,7 @@ self.valve_states_enum[valve_name] = 0 self.valves_sensed_states[valve_name] = '' + self.handler_execution_times = [] def get_valve_states(self): """ @@ -230,6 +232,7 @@ @param message: published DD valves states message @return: none """ + start = time.perf_counter() vsa = struct.unpack(DataTypes.U32.unpack_attrib(), bytearray(message['message'][self.START_POS_VALVES_STATES:self.END_POS_ALL_VALVES])) self.valve_states_all = vsa[0] @@ -285,6 +288,7 @@ start = end end += 1 self.dd_valves_states_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_valve_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/alarms.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/alarms.py (.../alarms.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/alarms.py (.../alarms.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -17,6 +17,7 @@ # Module imports from logging import Logger import struct +import time # Project imports from leahi_dialin.common.alarm_defs import AlarmList @@ -63,6 +64,7 @@ self.last_alarm_triggered = 0 #: The timestamp when did the last alarm triggered self.last_alarm_data_1 = 0.0 #: The last Alarm's data part 1 self.last_alarm_data_2 = 0.0 #: The last Alarm's data part 2 + self.handler_execution_times = [] @publish(["msg_id_fp_alarm_triggered", "alarm_states", "alarm_conditions", @@ -75,6 +77,7 @@ @param message: published FP alarm activation message @return: none """ + start = time.perf_counter() self.logger.debug("Alarm activated!") result = {} @@ -112,6 +115,7 @@ self.last_alarm_data_1 = result['data_1'] self.last_alarm_data_2 = result['data_2'] self.fp_alarm_triggered_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_alarm_state_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/boost_pump.py =================================================================== diff -u -rf1b8b4e9558e9cb95b994044f1d7d247c6c8be3f -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/boost_pump.py (.../boost_pump.py) (revision f1b8b4e9558e9cb95b994044f1d7d247c6c8be3f) +++ leahi_dialin/fp/modules/boost_pump.py (.../boost_pump.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -63,6 +64,7 @@ fp_enum_repository.FPPumpAttributes.FB_DUTY_CYCLE_PCT.name: 0.0 } } + self.handler_execution_times = [] @publish(["msg_id_fp_boost_pump_data", "boost_pump", "boost_pump_timestamp"]) @@ -74,6 +76,7 @@ @param message: published FP ro pump data message @return: none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.STATE.name, DataTypes.U32)) sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.DUTY_CYCLE.name, DataTypes.U32)) @@ -89,6 +92,7 @@ decoder_list = sensor_list, message = message) self.boost_pump_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_boost_pump_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/conductivity_sensors.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -71,6 +72,7 @@ fp_enum_repository.FPRORejectionRatioNames.GEN_PERMEATE_STATE.name: 0 } + self.handler_execution_times = [] @publish(["msg_id_fp_conductivity_data", "fp_conductivity", "fp_conductivity_timestamp"]) def _handler_conductivity_sensors_sync(self, message, timestamp=0.0): @@ -81,6 +83,7 @@ @param message: published conductivity sensor data message @return: None """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPConductivitySensorNames.P9_COND.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPConductivitySensorNames.P18_COND.name, DataTypes.F32)) @@ -100,6 +103,7 @@ @param message: Published RO Rejection Ratio data message @return: None """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPRORejectionRatioNames.RAW_RO_REJECTION_RATIO.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPRORejectionRatioNames.RAW_RO_REJECTION_RATIO_TANK_FILL.name, DataTypes.F32)) @@ -111,6 +115,7 @@ decoder_list = sensor_list, message = message) self.ro_rejection_ratio_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_conductivity_sensor_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/flow_sensors.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/flow_sensors.py (.../flow_sensors.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/flow_sensors.py (.../flow_sensors.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -55,6 +56,7 @@ fp_enum_repository.FPFlowSensorNames.P7_FLOW.name: 0.0, fp_enum_repository.FPFlowSensorNames.P16_FLOW.name: 0.0 } + self.handler_execution_times = [] @publish(["msg_id_fp_flow_data", "fp_flows", "fp_flows_timestamp"]) @@ -65,6 +67,7 @@ @param message: published flow sensor data message @returns none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPFlowSensorNames.P7_FLOW.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPFlowSensorNames.P16_FLOW.name, DataTypes.F32)) @@ -73,6 +76,7 @@ decoder_list = sensor_list, message = message) self.fp_flow_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_flow_sensor_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/levels.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/levels.py (.../levels.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/levels.py (.../levels.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -55,6 +56,7 @@ self.fp_levels = { fp_enum_repository.FPFloaterLevelSensorNames.P25_LEVEL.name: 0 } + self.handler_execution_times = [] @publish(["msg_id_fp_level_data", @@ -67,13 +69,15 @@ @param message: published levels data message @returns none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPFloaterLevelSensorNames.P25_LEVEL.name, DataTypes.U32)) self.process_into_dict(dict_to_update = self.fp_levels, decoder_list = sensor_list, message = message) self.fp_levels_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_levels_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/permeate_tank.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/permeate_tank.py (.../permeate_tank.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/permeate_tank.py (.../permeate_tank.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -50,8 +51,8 @@ self.permeate_tank_timestamp = 0.0 #: The timestamp of the last message self.permeate_tank_state = 0 #: The Permeate Tank's State value + self.handler_execution_times = [] - @publish(["msg_id_fp_permeate_tank_data", "permeate_tank_state", "permeate_tank_timestamp"]) def _handler_permeate_tank_sync(self, message, timestamp=0.0): """ @@ -60,12 +61,14 @@ @param message: published permeate tank data message @return: None """ + start = time.perf_counter() msg_list =[] msg_list.append(('self.permeate_tank_state', DataTypes.U32)) self.process_into_vars(decoder_list = msg_list, message = message) self.permeate_tank_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_permeate_tank_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/pressure_sensors.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,8 +16,9 @@ # Module imports from logging import Logger +import time -# Project importsk +# Project imports from leahi_dialin.common.constants import NO_RESET from leahi_dialin.common import fp_enum_repository from leahi_dialin.common.fp_defs import BETA_IOFP_PRES_SENSOR_OFFSET @@ -58,6 +59,7 @@ fp_enum_repository.FPPressureSensorNames.P17_PRES.name: 0.0, fp_enum_repository.FPPressureSensorNames.P46_PRES.name: 0.0 } + self.handler_execution_times = [] @publish(["msg_id_fp_pressures_data", "fp_pressures", "fp_pressure_timestamp"]) @@ -69,6 +71,7 @@ @param message: published FP pressure sensor data message @return: none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPPressureSensorNames.M3_PRES.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPPressureSensorNames.P8_PRES.name, DataTypes.F32)) @@ -80,6 +83,7 @@ decoder_list = sensor_list, message = message) self.fp_pressure_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_pressure_sensors_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/ro_pump.py =================================================================== diff -u -r465679409a5fe6f6007ddffca1fd3e89ead9d9c4 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/ro_pump.py (.../ro_pump.py) (revision 465679409a5fe6f6007ddffca1fd3e89ead9d9c4) +++ leahi_dialin/fp/modules/ro_pump.py (.../ro_pump.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -63,6 +64,7 @@ fp_enum_repository.FPPumpAttributes.FB_DUTY_CYCLE_PCT.name: 0.0 } } + self.handler_execution_times = [] @publish(["msg_id_fp_ro_pump_data", "ro_pump", "ro_pump_timestamp" ]) @@ -74,6 +76,7 @@ @param message: published FP ro pump data message @return: none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPROPumpNames.P12_PUMP.name, fp_enum_repository.FPPumpAttributes.STATE.name, DataTypes.U32)) sensor_list.append((fp_enum_repository.FPROPumpNames.P12_PUMP.name, fp_enum_repository.FPPumpAttributes.DUTY_CYCLE.name, DataTypes.U32)) @@ -89,6 +92,7 @@ decoder_list = sensor_list, message = message) self.ro_pump_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_ro_pump_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/temperatures.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/temperatures.py (.../temperatures.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/temperatures.py (.../temperatures.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -59,6 +60,7 @@ fp_enum_repository.FPTemperatureSensorNames.P7_INTERNAL_TEMP.name: 0.0, fp_enum_repository.FPTemperatureSensorNames.P16_INTERNAL_TEMP.name: 0.0 } + self.handler_execution_times = [] @publish(["msg_id_fp_temperature_data", "fp_temperatures", "fp_temperatures_timestamp"]) @@ -69,6 +71,7 @@ @param message: published FP temperature sensors data message @returns none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((fp_enum_repository.FPTemperatureSensorNames.M3_TEMP.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPTemperatureSensorNames.P8_TEMP.name, DataTypes.F32)) @@ -86,6 +89,7 @@ decoder_list = sensor_list, message = message) self.fp_temperature_sensors_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_temperatures_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/valves.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d --- leahi_dialin/fp/modules/valves.py (.../valves.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/fp/modules/valves.py (.../valves.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) @@ -18,6 +18,7 @@ import struct from logging import Logger from collections import OrderedDict +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -79,6 +80,7 @@ valve_name = fp_enum_repository.FPValveNames(i).name self.valve_states_enum[valve_name] = 0 self.valves_sensed_states[valve_name] = '' + self.handler_execution_times = [] @staticmethod @@ -132,6 +134,7 @@ @param message: published FP valves states message @return: none """ + start = time.perf_counter() # Extract each valve state from U08 valves states using bit-masking io_valves = struct.unpack(DataTypes.U08.unpack_attrib(), bytearray(message['message'][self.START_IO_VALVES_STATES:self.END_IO_VALVES_STATES])) self.m4_valv["state"] = self._binary_to_valve_state(io_valves[0] & 1) @@ -161,6 +164,7 @@ start = end end += 1 self.fp_valves_states_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_valve_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: