mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
Merge pull request #3741 from pypeclub/feature/log_tweaks
General: Logger tweaks
This commit is contained in:
commit
c485b3a35d
6 changed files with 62 additions and 46 deletions
|
|
@ -10,6 +10,8 @@ class AbstractProvider:
|
|||
CODE = ''
|
||||
LABEL = ''
|
||||
|
||||
_log = None
|
||||
|
||||
def __init__(self, project_name, site_name, tree=None, presets=None):
|
||||
self.presets = None
|
||||
self.active = False
|
||||
|
|
@ -19,6 +21,12 @@ class AbstractProvider:
|
|||
|
||||
super(AbstractProvider, self).__init__()
|
||||
|
||||
@property
|
||||
def log(self):
|
||||
if self._log is None:
|
||||
self._log = Logger.get_logger(self.__class__.__name__)
|
||||
return self._log
|
||||
|
||||
@abc.abstractmethod
|
||||
def is_active(self):
|
||||
"""
|
||||
|
|
@ -199,11 +207,11 @@ class AbstractProvider:
|
|||
path = anatomy.fill_root(path)
|
||||
except KeyError:
|
||||
msg = "Error in resolving local root from anatomy"
|
||||
log.error(msg)
|
||||
self.log.error(msg)
|
||||
raise ValueError(msg)
|
||||
except IndexError:
|
||||
msg = "Path {} contains unfillable placeholder"
|
||||
log.error(msg)
|
||||
self.log.error(msg)
|
||||
raise ValueError(msg)
|
||||
|
||||
return path
|
||||
|
|
|
|||
|
|
@ -2,12 +2,9 @@ import os
|
|||
|
||||
import dropbox
|
||||
|
||||
from openpype.api import Logger
|
||||
from .abstract_provider import AbstractProvider
|
||||
from ..utils import EditableScopes
|
||||
|
||||
log = Logger().get_logger("SyncServer")
|
||||
|
||||
|
||||
class DropboxHandler(AbstractProvider):
|
||||
CODE = 'dropbox'
|
||||
|
|
@ -20,26 +17,26 @@ class DropboxHandler(AbstractProvider):
|
|||
self.dbx = None
|
||||
|
||||
if not self.presets:
|
||||
log.info(
|
||||
self.log.info(
|
||||
"Sync Server: There are no presets for {}.".format(site_name)
|
||||
)
|
||||
return
|
||||
|
||||
if not self.presets["enabled"]:
|
||||
log.debug("Sync Server: Site {} not enabled for {}.".
|
||||
self.log.debug("Sync Server: Site {} not enabled for {}.".
|
||||
format(site_name, project_name))
|
||||
return
|
||||
|
||||
token = self.presets.get("token", "")
|
||||
if not token:
|
||||
msg = "Sync Server: No access token for dropbox provider"
|
||||
log.info(msg)
|
||||
self.log.info(msg)
|
||||
return
|
||||
|
||||
team_folder_name = self.presets.get("team_folder_name", "")
|
||||
if not team_folder_name:
|
||||
msg = "Sync Server: No team folder name for dropbox provider"
|
||||
log.info(msg)
|
||||
self.log.info(msg)
|
||||
return
|
||||
|
||||
acting_as_member = self.presets.get("acting_as_member", "")
|
||||
|
|
@ -47,7 +44,7 @@ class DropboxHandler(AbstractProvider):
|
|||
msg = (
|
||||
"Sync Server: No acting member for dropbox provider"
|
||||
)
|
||||
log.info(msg)
|
||||
self.log.info(msg)
|
||||
return
|
||||
|
||||
try:
|
||||
|
|
@ -55,7 +52,7 @@ class DropboxHandler(AbstractProvider):
|
|||
token, acting_as_member, team_folder_name
|
||||
)
|
||||
except Exception as e:
|
||||
log.info("Could not establish dropbox object: {}".format(e))
|
||||
self.log.info("Could not establish dropbox object: {}".format(e))
|
||||
return
|
||||
|
||||
super(AbstractProvider, self).__init__()
|
||||
|
|
@ -448,7 +445,7 @@ class DropboxHandler(AbstractProvider):
|
|||
path = anatomy.fill_root(path)
|
||||
except KeyError:
|
||||
msg = "Error in resolving local root from anatomy"
|
||||
log.error(msg)
|
||||
self.log.error(msg)
|
||||
raise ValueError(msg)
|
||||
|
||||
return path
|
||||
|
|
|
|||
|
|
@ -5,12 +5,12 @@ import sys
|
|||
import six
|
||||
import platform
|
||||
|
||||
from openpype.api import Logger
|
||||
from openpype.api import get_system_settings
|
||||
from openpype.lib import Logger
|
||||
from openpype.settings import get_system_settings
|
||||
from .abstract_provider import AbstractProvider
|
||||
from ..utils import time_function, ResumableError
|
||||
|
||||
log = Logger().get_logger("SyncServer")
|
||||
log = Logger.get_logger("GDriveHandler")
|
||||
|
||||
try:
|
||||
from googleapiclient.discovery import build
|
||||
|
|
@ -69,13 +69,17 @@ class GDriveHandler(AbstractProvider):
|
|||
|
||||
self.presets = presets
|
||||
if not self.presets:
|
||||
log.info("Sync Server: There are no presets for {}.".
|
||||
format(site_name))
|
||||
self.log.info(
|
||||
"Sync Server: There are no presets for {}.".format(site_name)
|
||||
)
|
||||
return
|
||||
|
||||
if not self.presets["enabled"]:
|
||||
log.debug("Sync Server: Site {} not enabled for {}.".
|
||||
format(site_name, project_name))
|
||||
self.log.debug(
|
||||
"Sync Server: Site {} not enabled for {}.".format(
|
||||
site_name, project_name
|
||||
)
|
||||
)
|
||||
return
|
||||
|
||||
current_platform = platform.system().lower()
|
||||
|
|
@ -85,20 +89,22 @@ class GDriveHandler(AbstractProvider):
|
|||
if not cred_path:
|
||||
msg = "Sync Server: Please, fill the credentials for gdrive "\
|
||||
"provider for platform '{}' !".format(current_platform)
|
||||
log.info(msg)
|
||||
self.log.info(msg)
|
||||
return
|
||||
|
||||
try:
|
||||
cred_path = cred_path.format(**os.environ)
|
||||
except KeyError as e:
|
||||
log.info("Sync Server: The key(s) {} does not exist in the "
|
||||
"environment variables".format(" ".join(e.args)))
|
||||
self.log.info((
|
||||
"Sync Server: The key(s) {} does not exist in the "
|
||||
"environment variables"
|
||||
).format(" ".join(e.args)))
|
||||
return
|
||||
|
||||
if not os.path.exists(cred_path):
|
||||
msg = "Sync Server: No credentials for gdrive provider " + \
|
||||
"for '{}' on path '{}'!".format(site_name, cred_path)
|
||||
log.info(msg)
|
||||
self.log.info(msg)
|
||||
return
|
||||
|
||||
self.service = None
|
||||
|
|
@ -318,7 +324,7 @@ class GDriveHandler(AbstractProvider):
|
|||
fields='id')
|
||||
|
||||
media.stream()
|
||||
log.debug("Start Upload! {}".format(source_path))
|
||||
self.log.debug("Start Upload! {}".format(source_path))
|
||||
last_tick = status = response = None
|
||||
status_val = 0
|
||||
while response is None:
|
||||
|
|
@ -331,7 +337,7 @@ class GDriveHandler(AbstractProvider):
|
|||
if not last_tick or \
|
||||
time.time() - last_tick >= server.LOG_PROGRESS_SEC:
|
||||
last_tick = time.time()
|
||||
log.debug("Uploaded %d%%." %
|
||||
self.log.debug("Uploaded %d%%." %
|
||||
int(status_val * 100))
|
||||
server.update_db(project_name=project_name,
|
||||
new_file_id=None,
|
||||
|
|
@ -350,8 +356,9 @@ class GDriveHandler(AbstractProvider):
|
|||
if 'has not granted' in ex._get_reason().strip():
|
||||
raise PermissionError(ex._get_reason().strip())
|
||||
|
||||
log.warning("Forbidden received, hit quota. "
|
||||
"Injecting 60s delay.")
|
||||
self.log.warning(
|
||||
"Forbidden received, hit quota. Injecting 60s delay."
|
||||
)
|
||||
time.sleep(60)
|
||||
return False
|
||||
raise
|
||||
|
|
@ -417,7 +424,7 @@ class GDriveHandler(AbstractProvider):
|
|||
if not last_tick or \
|
||||
time.time() - last_tick >= server.LOG_PROGRESS_SEC:
|
||||
last_tick = time.time()
|
||||
log.debug("Downloaded %d%%." %
|
||||
self.log.debug("Downloaded %d%%." %
|
||||
int(status_val * 100))
|
||||
server.update_db(project_name=project_name,
|
||||
new_file_id=None,
|
||||
|
|
@ -629,9 +636,9 @@ class GDriveHandler(AbstractProvider):
|
|||
["gdrive"]
|
||||
)
|
||||
except KeyError:
|
||||
log.info(("Sync Server: There are no presets for Gdrive " +
|
||||
"provider.").
|
||||
format(str(provider_presets)))
|
||||
log.info((
|
||||
"Sync Server: There are no presets for Gdrive provider."
|
||||
).format(str(provider_presets)))
|
||||
return
|
||||
return provider_presets
|
||||
|
||||
|
|
@ -704,7 +711,7 @@ class GDriveHandler(AbstractProvider):
|
|||
roots[self.MY_DRIVE_STR] = self.service.files() \
|
||||
.get(fileId='root').execute()
|
||||
except errors.HttpError:
|
||||
log.warning("HttpError in sync loop, "
|
||||
self.log.warning("HttpError in sync loop, "
|
||||
"trying next loop",
|
||||
exc_info=True)
|
||||
raise ResumableError
|
||||
|
|
@ -727,7 +734,7 @@ class GDriveHandler(AbstractProvider):
|
|||
Returns:
|
||||
(dictionary) path as a key, folder id as a value
|
||||
"""
|
||||
log.debug("build_tree len {}".format(len(folders)))
|
||||
self.log.debug("build_tree len {}".format(len(folders)))
|
||||
if not self.root: # build only when necessary, could be expensive
|
||||
self.root = self._prepare_root_info()
|
||||
|
||||
|
|
@ -779,9 +786,9 @@ class GDriveHandler(AbstractProvider):
|
|||
loop_cnt += 1
|
||||
|
||||
if len(no_parents_yet) > 0:
|
||||
log.debug("Some folders path are not resolved {}".
|
||||
self.log.debug("Some folders path are not resolved {}".
|
||||
format(no_parents_yet))
|
||||
log.debug("Remove deleted folders from trash.")
|
||||
self.log.debug("Remove deleted folders from trash.")
|
||||
|
||||
return tree
|
||||
|
||||
|
|
|
|||
|
|
@ -4,10 +4,10 @@ import time
|
|||
import threading
|
||||
import platform
|
||||
|
||||
from openpype.api import Logger
|
||||
from openpype.api import get_system_settings
|
||||
from openpype.lib import Logger
|
||||
from openpype.settings import get_system_settings
|
||||
from .abstract_provider import AbstractProvider
|
||||
log = Logger().get_logger("SyncServer")
|
||||
log = Logger.get_logger("SyncServer-SFTPHandler")
|
||||
|
||||
pysftp = None
|
||||
try:
|
||||
|
|
@ -43,8 +43,9 @@ class SFTPHandler(AbstractProvider):
|
|||
|
||||
self.presets = presets
|
||||
if not self.presets:
|
||||
log.warning("Sync Server: There are no presets for {}.".
|
||||
format(site_name))
|
||||
self.log.warning(
|
||||
"Sync Server: There are no presets for {}.".format(site_name)
|
||||
)
|
||||
return
|
||||
|
||||
# store to instance for reconnect
|
||||
|
|
@ -423,7 +424,7 @@ class SFTPHandler(AbstractProvider):
|
|||
return pysftp.Connection(**conn_params)
|
||||
except (paramiko.ssh_exception.SSHException,
|
||||
pysftp.exceptions.ConnectionException):
|
||||
log.warning("Couldn't connect", exc_info=True)
|
||||
self.log.warning("Couldn't connect", exc_info=True)
|
||||
|
||||
def _mark_progress(self, project_name, file, representation, server, site,
|
||||
source_path, target_path, direction):
|
||||
|
|
@ -445,7 +446,7 @@ class SFTPHandler(AbstractProvider):
|
|||
time.time() - last_tick >= server.LOG_PROGRESS_SEC:
|
||||
status_val = target_file_size / source_file_size
|
||||
last_tick = time.time()
|
||||
log.debug(direction + "ed %d%%." % int(status_val * 100))
|
||||
self.log.debug(direction + "ed %d%%." % int(status_val * 100))
|
||||
server.update_db(project_name=project_name,
|
||||
new_file_id=None,
|
||||
file=file,
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ class TimersManagerModuleRestApi:
|
|||
happens in Workfile app.
|
||||
"""
|
||||
def __init__(self, user_module, server_manager):
|
||||
self.log = None
|
||||
self._log = None
|
||||
self.module = user_module
|
||||
self.server_manager = server_manager
|
||||
|
||||
|
|
|
|||
|
|
@ -53,9 +53,12 @@ class WebServerModule(OpenPypeModule, ITrayService):
|
|||
try:
|
||||
module.webserver_initialization(self.server_manager)
|
||||
except Exception:
|
||||
self.log.warning((
|
||||
"Failed to connect module \"{}\" to webserver."
|
||||
).format(module.name))
|
||||
self.log.warning(
|
||||
(
|
||||
"Failed to connect module \"{}\" to webserver."
|
||||
).format(module.name),
|
||||
exc_info=True
|
||||
)
|
||||
|
||||
def tray_init(self):
|
||||
self.create_server_manager()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue