##// END OF EJS Templates
fix: lfs chunked uploads....
fix: lfs chunked uploads. When testing large file uploads it's found that gunicorn raises NoMoreData instead of returning value. This fixes the problem and doesn't show excesive exceptions for no reason. Previously file upload still worked but spawned errors in logs

File last commit:

r1250:2c57bb5b default
r1280:b2259b07 default
Show More
__init__.py
51 lines | 1.5 KiB | text/x-python | PythonLexer
import logging
from .stream import TCPStatsClient, UnixSocketStatsClient # noqa
from .udp import StatsClient # noqa
HOST = 'localhost'
PORT = 8125
IPV6 = False
PREFIX = None
MAXUDPSIZE = 512
log = logging.getLogger('rhodecode.statsd')
def statsd_config(config, prefix='statsd.'):
_config = {}
for key in list(config.keys()):
if key.startswith(prefix):
_config[key[len(prefix):]] = config[key]
return _config
def client_from_config(configuration, prefix='statsd.', **kwargs):
from pyramid.settings import asbool
_config = statsd_config(configuration, prefix)
statsd_flag = _config.get('enabled')
statsd_enabled = asbool(_config.pop('enabled', False))
if not statsd_enabled:
log.debug('statsd client not enabled by statsd.enabled = %s flag, skipping...', statsd_flag)
return
host = _config.pop('statsd_host', HOST)
port = _config.pop('statsd_port', PORT)
prefix = _config.pop('statsd_prefix', PREFIX)
maxudpsize = _config.pop('statsd_maxudpsize', MAXUDPSIZE)
ipv6 = asbool(_config.pop('statsd_ipv6', IPV6))
log.debug('configured statsd client %s:%s', host, port)
try:
client = StatsClient(
host=host, port=port, prefix=prefix, maxudpsize=maxudpsize, ipv6=ipv6)
except Exception:
log.exception('StatsD is enabled, but failed to connect to statsd server, fallback: disable statsd')
client = None
return client
def get_statsd_client(request):
return client_from_config(request.registry.settings)