def get_logs_output(self, job_id, read_size): logger.info("Enter") logger.info("log output file's read size is: %u" % read_size) log_output_file_realpath = _create_log_output_file_path(job_id) log_output_dict = {} if os.path.exists(log_output_file_realpath): output_file_object = open(log_output_file_realpath, 'r') job_doc = job_DAO.get_job_details(job_id, { "_id": False, "status": True }) job_status = job_doc["status"] logger.info("Current job status is:%s" % job_status) current_file_size = os.path.getsize(log_output_file_realpath) logger.info("Current log output file's size snapshot is:%u" % current_file_size) unread_size = current_file_size - read_size logger.info("Current log output file's unread size is:%u" % unread_size) output_file_object.seek(read_size) log_content = output_file_object.read(unread_size) logger.info("Current log output file's content is:%s" % log_content) log_output_dict["read_size"] = current_file_size log_output_dict["job_status"] = job_status log_output_dict["current_log_content"] = log_content logger.info("Exit") return log_output_dict
def get_job_details(self, job_id, projection_dict=None): job_doc = None try: job_doc = job_DAO.get_job_details(job_id, projection_dict) except RecordNotFoundException: raise return job_doc
def get_job_details(self, job_id, projection_dict=None): job_doc = None try: job_doc = job_DAO.get_job_details(job_id, projection_dict) except RecordNotFoundException: raise return job_doc
def get_logs_output(self, job_id, read_size): logger.info("Enter") logger.info("log output file's read size is: %u" % read_size) log_output_file_realpath = _create_log_output_file_path(job_id) log_output_dict = {} if os.path.exists(log_output_file_realpath): output_file_object = open(log_output_file_realpath, 'r') job_doc = job_DAO.get_job_details(job_id, {"_id": False, "status": True}) job_status = job_doc["status"] logger.info("Current job status is:%s" % job_status) current_file_size = os.path.getsize(log_output_file_realpath) logger.info("Current log output file's size snapshot is:%u" % current_file_size) unread_size = current_file_size - read_size logger.info("Current log output file's unread size is:%u" % unread_size) output_file_object.seek(read_size) log_content = output_file_object.read(unread_size) logger.info("Current log output file's content is:%s" % log_content) log_output_dict["read_size"] = current_file_size log_output_dict["job_status"] = job_status log_output_dict["current_log_content"] = log_content logger.info("Exit") return log_output_dict