diff --git a/rhodecode/apps/ssh_support/lib/ssh_wrapper_v1.py b/rhodecode/apps/ssh_support/lib/ssh_wrapper_v1.py --- a/rhodecode/apps/ssh_support/lib/ssh_wrapper_v1.py +++ b/rhodecode/apps/ssh_support/lib/ssh_wrapper_v1.py @@ -23,28 +23,14 @@ import logging import click -from pyramid.paster import setup_logging - from rhodecode.lib.pyramid_utils import bootstrap from rhodecode.lib.statsd_client import StatsdClient from .backends import SshWrapper +from .utils import setup_custom_logging log = logging.getLogger(__name__) -def setup_custom_logging(ini_path, debug): - if debug: - # enabled rhodecode.ini controlled logging setup - setup_logging(ini_path) - else: - # configure logging in a mode that doesn't print anything. - # in case of regularly configured logging it gets printed out back - # to the client doing an SSH command. - logger = logging.getLogger('') - null = logging.NullHandler() - # add the handler to the root logger - logger.handlers = [null] - @click.command() @click.argument('ini_path', type=click.Path(exists=True)) diff --git a/rhodecode/apps/ssh_support/lib/ssh_wrapper_v2.py b/rhodecode/apps/ssh_support/lib/ssh_wrapper_v2.py --- a/rhodecode/apps/ssh_support/lib/ssh_wrapper_v2.py +++ b/rhodecode/apps/ssh_support/lib/ssh_wrapper_v2.py @@ -23,11 +23,9 @@ import logging import click -from pyramid.paster import setup_logging - from rhodecode.lib.statsd_client import StatsdClient from .backends import SshWrapperStandalone -from .ssh_wrapper_v1 import setup_custom_logging +from .utils import setup_custom_logging log = logging.getLogger(__name__) diff --git a/rhodecode/apps/ssh_support/lib/utils.py b/rhodecode/apps/ssh_support/lib/utils.py new file mode 100644 --- /dev/null +++ b/rhodecode/apps/ssh_support/lib/utils.py @@ -0,0 +1,34 @@ +# Copyright (C) 2016-2023 RhodeCode GmbH +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License, version 3 +# (only), as published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +# This program is dual-licensed. If you wish to learn more about the +# RhodeCode Enterprise Edition, including its added features, Support services, +# and proprietary license terms, please see https://rhodecode.com/licenses/ + +import logging +from pyramid.paster import setup_logging + + +def setup_custom_logging(ini_path, debug): + if debug: + # enabled rhodecode.ini controlled logging setup + setup_logging(ini_path) + else: + # configure logging in a mode that doesn't print anything. + # in case of regularly configured logging it gets printed out back + # to the client doing an SSH command. + logger = logging.getLogger('') + null = logging.NullHandler() + # add the handler to the root logger + logger.handlers = [null]