Spaces:
Sleeping
Sleeping
| import platform,socket,re,uuid,json,psutil,logging | |
| from datetime import datetime as dt | |
| from google_sheet import log_repo, conf_repo, SheetCRUDRepository | |
| from version import VERSION | |
| import pytz | |
| def get_now(): | |
| current_time = dt.now(pytz.timezone('Asia/Ho_Chi_Minh')) | |
| return current_time | |
| def get_sys_info(): | |
| try: | |
| info={} | |
| info['platform']=platform.system() | |
| info['platform-release']=platform.release() | |
| info['platform-version']=platform.version() | |
| info['architecture']=platform.machine() | |
| info['hostname']=socket.gethostname() | |
| info['ip-address']=socket.gethostbyname(socket.gethostname()) | |
| info['mac-address']=':'.join(re.findall('..', '%012x' % uuid.getnode())) | |
| info['processor']=platform.processor() | |
| info['ram']=str(round(psutil.virtual_memory().total / (1024.0 **3)))+" GB" | |
| return json.dumps(info) | |
| except Exception as e: | |
| logging.exception(e) | |
| class SheetLogger: | |
| def __init__(self, log_repo: SheetCRUDRepository, config_repo: SheetCRUDRepository): | |
| self.log_repo = log_repo | |
| self.config_repo = config_repo | |
| def log(self, log='', nb='', username=''): | |
| self.log_repo.create({ | |
| "time": str(get_now()), | |
| "notebook_name": nb, | |
| "kaggle_username": username, | |
| "log": log, | |
| "device": str(get_sys_info()), | |
| "version": VERSION | |
| }) | |
| def update_job_status(self, row, validate_status: str = None, notebook_status: str = None): | |
| data = self.config_repo.read(row) | |
| data.update({"last_updated": str(get_now())}) | |
| if validate_status is not None: | |
| data.update({"validate_status": validate_status}) | |
| if notebook_status is not None: | |
| data.update({"notebook_status": notebook_status}) | |
| self.config_repo.update(row, data) | |
| # print(self.config_repo.find({"config": "hahunavth/vlsp-sv-2023-s2pecnet-train"})) | |
| sheet_logger = SheetLogger(log_repo, conf_repo) | |
| if __name__ == "__main__": | |
| sheet_logger.update_job_status(5, "abc" , ) |