Index: cloudsync/handlers/ui_cs_request_handler.py =================================================================== diff -u -rd2799fd4159bbf89974027611ef0f854a5d94121 -r21530c20b92d62582924e30f7ece9f9bc56dc3ae --- cloudsync/handlers/ui_cs_request_handler.py (.../ui_cs_request_handler.py) (revision d2799fd4159bbf89974027611ef0f854a5d94121) +++ cloudsync/handlers/ui_cs_request_handler.py (.../ui_cs_request_handler.py) (revision 21530c20b92d62582924e30f7ece9f9bc56dc3ae) @@ -235,18 +235,23 @@ # CS LOG ROTATION elif InboundMessageIDs.mapped_str_value(message.ID) == InboundMessageIDs.UI2CS_REQ_LOG_ROTATION: self.logger.info("UI2CS_REQ_LOG_ROTATION request received") - self.logger.debug("Used Percentage: {0}".format(message.parameters[0])) - try: - num_of_files, del_size_mb = helpers_log_rotation(message.parameters[0]) - message_body = str( - OutboundMessageIDs.CS2UI_REQ_LOG_ROTATION.value) + f',{num_of_files}' + f',{del_size_mb}' - self.output_channel.enqueue_message(message_body) - except Exception as e: - error = Error("{0},2,{1},{2}".format(OutboundMessageIDs.CS2UI_ERROR.value, - ErrorIDs.CS_LOG_ROTATION_ERROR.value, - e)) + if len(message.parameters) != 1 and message.parameters[0] > 0: + try: + self.logger.debug("Used Percentage: {0}".format(message.parameters[0])) + num_of_files, del_size_mb = helpers_log_rotation(message.parameters[0]) + message_body = str( + OutboundMessageIDs.CS2UI_REQ_LOG_ROTATION.value) + f',{num_of_files}' + f',{del_size_mb}' + self.output_channel.enqueue_message(message_body) + except Exception as e: + error = Error("{0},2,{1},{2}".format(OutboundMessageIDs.CS2UI_ERROR.value, + ErrorIDs.CS_LOG_ROTATION_ERROR.value, + e)) + self.error_handler.enqueue_error(error=error) + else: + error = Error("{0},2,{1},invalid # of parameters for log rotation".format( + OutboundMessageIDs.CS2UI_ERROR.value, + ErrorIDs.CS_LOG_ROTATION_ERROR.value)) self.error_handler.enqueue_error(error=error) - # ERROR MESSAGE RECEIVED FROM UI elif InboundMessageIDs.mapped_str_value(message.ID) == InboundMessageIDs.UI2CS_ERROR: error_body = "{0},{1},{2}".format(InboundMessageIDs.UI2CS_ERROR.value, message.size, Index: cloudsync/utils/helpers.py =================================================================== diff -u -rd2799fd4159bbf89974027611ef0f854a5d94121 -r21530c20b92d62582924e30f7ece9f9bc56dc3ae --- cloudsync/utils/helpers.py (.../helpers.py) (revision d2799fd4159bbf89974027611ef0f854a5d94121) +++ cloudsync/utils/helpers.py (.../helpers.py) (revision 21530c20b92d62582924e30f7ece9f9bc56dc3ae) @@ -502,6 +502,9 @@ num_files_deleted = 0 # Total sd stats sd_total_bytes, sd_used_bytes, sd_free_bytes = shutil.disk_usage(UI2CS_FILE_CHANNELS_PATH) + + if sd_used_bytes == 0: + sd_used_bytes = 1 # Cloudsync log stats cs_used_bytes = int(subprocess.check_output(['du', '-bsx', UI2CS_FILE_CHANNELS_PATH]).split()[0].decode('utf-8')) total_deleted_size = cs_used_bytes