本文整理汇总了Python中weblate.logger.LOGGER类的典型用法代码示例。如果您正苦于以下问题:Python LOGGER类的具体用法?Python LOGGER怎么用?Python LOGGER使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了LOGGER类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: get_plural_type
def get_plural_type(base_code, pluralequation):
"""Get correct plural type for language."""
# Remove not needed parenthesis
if pluralequation[-1] == ';':
pluralequation = pluralequation[:-1]
# No plural
if pluralequation == '0':
return data.PLURAL_NONE
# Standard plural equations
for mapping in data.PLURAL_MAPPINGS:
if pluralequation in mapping[0]:
return mapping[1]
# Arabic special case
if base_code in ('ar',):
return data.PLURAL_ARABIC
# Log error in case of uknown mapping
LOGGER.error(
'Can not guess type of plural for %s: %s', base_code, pluralequation
)
return data.PLURAL_UNKNOWN
开发者ID:dekoza,项目名称:weblate,代码行数:25,代码来源:models.py
示例2: get_avatar_image
def get_avatar_image(user, size):
"""
Returns avatar image from cache (if available) or downloads it.
"""
cache_key = 'avatar-img-{0}-{1}'.format(
user.username,
size
)
# Try using avatar specific cache if available
try:
cache = caches['avatar']
except InvalidCacheBackendError:
cache = caches['default']
image = cache.get(cache_key)
if image is None:
try:
image = download_avatar_image(user, size)
cache.set(cache_key, image)
except IOError as error:
report_error(
error, sys.exc_info(),
extra_data={'avatar': user.username}
)
LOGGER.error(
'Failed to fetch avatar for %s: %s',
user.username,
str(error)
)
return get_fallback_avatar(size)
return image
开发者ID:Acidburn0zzz,项目名称:weblate,代码行数:34,代码来源:avatar.py
示例3: get_avatar_image
def get_avatar_image(request, user, size):
"""Return avatar image from cache (if available) or download it."""
cache_key = '-'.join((
'avatar-img',
user.username,
str(size)
))
# Try using avatar specific cache if available
try:
cache = caches['avatar']
except InvalidCacheBackendError:
cache = caches['default']
image = cache.get(cache_key)
if image is None:
try:
image = download_avatar_image(user, size)
cache.set(cache_key, image)
except (IOError, CertificateError) as error:
report_error(
error, sys.exc_info(), request,
extra_data={'avatar': user.username},
level='debug',
)
LOGGER.error(
'Failed to fetch avatar for %s: %s',
user.username,
str(error)
)
return get_fallback_avatar(size)
return image
开发者ID:daleathan,项目名称:weblate,代码行数:34,代码来源:avatar.py
示例4: mail_admins_contact
def mail_admins_contact(request, subject, message, context, sender, to):
"""Send a message to the admins, as defined by the ADMINS setting."""
LOGGER.info(
'contact form from %s',
sender,
)
if not to and settings.ADMINS:
to = [a[1] for a in settings.ADMINS]
elif not settings.ADMINS:
messages.error(
request,
_('Message could not be sent to administrator!')
)
LOGGER.error(
'ADMINS not configured, can not send message!'
)
return
mail = EmailMultiAlternatives(
'{0}{1}'.format(settings.EMAIL_SUBJECT_PREFIX, subject % context),
message % context,
to=to,
headers={'Reply-To': sender},
)
mail.send(fail_silently=False)
messages.success(
request,
_('Message has been sent to administrator.')
)
开发者ID:dekoza,项目名称:weblate,代码行数:31,代码来源:views.py
示例5: get_plural_type
def get_plural_type(code, pluralequation):
'''
Gets correct plural type for language.
'''
# Remove not needed parenthesis
if pluralequation[-1] == ';':
pluralequation = pluralequation[:-1]
if pluralequation[0] == '(' and pluralequation[-1] == ')':
pluralequation = pluralequation[1:-1]
# Get base language code
base_code = code.replace('_', '-').split('-')[0]
# No plural
if pluralequation == '0':
return data.PLURAL_NONE
# Standard plural equations
for mapping in data.PLURAL_MAPPINGS:
if pluralequation in mapping[0]:
return mapping[1]
# Arabic special case
if base_code in ('ar',):
return data.PLURAL_ARABIC
# Log error in case of uknown mapping
LOGGER.error(
'Can not guess type of plural for %s: %s', code, pluralequation
)
return data.PLURAL_UNKNOWN
开发者ID:ccfwwm,项目名称:weblate,代码行数:32,代码来源:models.py
示例6: bitbucket_hook_helper
def bitbucket_hook_helper(data):
"""API to handle service hooks from Bitbucket."""
if 'push' in data:
return bitbucket_webhook_helper(data)
# Parse owner, branch and repository name
owner = data['repository']['owner']
slug = data['repository']['slug']
if data['commits']:
branch = data['commits'][-1]['branch']
else:
branch = None
params = {'owner': owner, 'slug': slug}
# Construct possible repository URLs
if data['repository']['scm'] == 'git':
repos = [repo % params for repo in BITBUCKET_GIT_REPOS]
elif data['repository']['scm'] == 'hg':
repos = [repo % params for repo in BITBUCKET_HG_REPOS]
else:
LOGGER.error(
'unsupported repository: %s',
repr(data['repository'])
)
raise ValueError('unsupported repository')
return {
'service_long_name': 'Bitbucket',
'repo_url': ''.join([
data['canon_url'], data['repository']['absolute_url']
]),
'repos': repos,
'branch': branch,
}
开发者ID:saily,项目名称:weblate,代码行数:34,代码来源:api.py
示例7: report_error
def report_error(self, exc, request, message):
"""Wrapper for handling error situations"""
extra = {'mt_url': self.request_url, 'mt_params': self.request_params}
report_error(exc, request, extra, prefix='Machine translation error')
LOGGER.error(message, self.name)
LOGGER.info(
'Last URL: %s, params: %s', extra['mt_url'], extra['mt_params']
)
开发者ID:nijel,项目名称:weblate,代码行数:8,代码来源:base.py
示例8: send_mails
def send_mails(mails):
"""Sends multiple mails in single connection."""
try:
connection = get_connection()
connection.send_messages(mails)
except SMTPException as error:
LOGGER.error('Failed to send email: %s', error)
report_error(error, sys.exc_info())
开发者ID:harleyknd1,项目名称:weblate,代码行数:8,代码来源:models.py
示例9: get_notification_email
def get_notification_email(language, email, notification,
context=None, info=None):
"""Render notification email."""
context = context or {}
headers = {}
LOGGER.info(
'sending notification %s on %s to %s',
notification,
info,
email
)
with override('en' if language is None else language):
# Template name
context['subject_template'] = 'mail/{0}_subject.txt'.format(
notification
)
context['LANGUAGE_CODE'] = get_language()
context['LANGUAGE_BIDI'] = get_language_bidi()
# Adjust context
context['current_site_url'] = get_site_url()
context['site_title'] = settings.SITE_TITLE
# Render subject
subject = render_to_string(
context['subject_template'],
context
).strip()
# Render body
html_body = render_to_string(
'mail/{0}.html'.format(notification),
context
)
body = html2text(html_body)
# Define headers
headers['Auto-Submitted'] = 'auto-generated'
headers['X-AutoGenerated'] = 'yes'
headers['Precedence'] = 'bulk'
headers['X-Mailer'] = 'Weblate {0}'.format(VERSION)
# List of recipients
if email == 'ADMINS':
emails = [a[1] for a in settings.ADMINS]
else:
emails = [email]
# Return the mail content
return {
'subject': subject,
'body': body,
'to': emails,
'headers': headers,
'html_body': html_body,
}
开发者ID:nijel,项目名称:weblate,代码行数:58,代码来源:notifications.py
示例10: clean_captcha
def clean_captcha(self):
"""
Validation for captcha.
"""
if self.tampering or not self.captcha.validate(self.cleaned_data["captcha"]):
raise forms.ValidationError(_("Please check your math and try again."))
mail = self.cleaned_data.get("email", "NONE")
LOGGER.info("Passed captcha for %s (%s = %s)", mail, self.captcha.question, self.cleaned_data["captcha"])
开发者ID:GabLeRoux,项目名称:weblate,代码行数:10,代码来源:forms.py
示例11: report_error
def report_error(error, exc_info, request=None, extra_data=None):
"""Wrapper for error reporting
This can be used for store exceptions in error reporting solutions as
rollbar while handling error gracefully and giving user cleaner message.
"""
if HAS_ROLLBAR and hasattr(settings, 'ROLLBAR'):
rollbar.report_exc_info(exc_info, request, extra_data=extra_data)
LOGGER.error(
'Handled exception %s: %s',
error.__class__.__name__,
str(error)
)
开发者ID:harleyknd1,项目名称:weblate,代码行数:14,代码来源:util.py
示例12: report_error
def report_error(self, exc, message):
"""Wrapper for handling error situations"""
report_error(
exc, sys.exc_info(),
{'mt_url': self.request_url, 'mt_params': self.request_params}
)
LOGGER.error(
message,
self.name,
)
LOGGER.error(
'Last fetched URL: %s, params: %s',
self.request_url,
self.request_params,
)
开发者ID:daleathan,项目名称:weblate,代码行数:15,代码来源:base.py
示例13: send_immediate
def send_immediate(self, language, email, change):
with override('en' if language is None else language):
context = self.get_context(change)
subject = self.render_template('_subject.txt', context)
context['subject'] = subject
LOGGER.info(
'sending notification %s on %s to %s',
self.get_name(), context['component'], email,
)
self.send(
email,
subject,
self.render_template('.html', context),
self.get_headers(context),
)
开发者ID:nijel,项目名称:weblate,代码行数:15,代码来源:notifications.py
示例14: clean_captcha
def clean_captcha(self):
"""Validation for captcha."""
if (self.fresh or
not self.captcha.validate(self.cleaned_data['captcha'])):
raise forms.ValidationError(
_('Please check your math and try again.')
)
mail = self.cleaned_data.get('email', 'NONE')
LOGGER.info(
'Passed captcha for %s (%s = %s)',
mail,
self.captcha.question,
self.cleaned_data['captcha']
)
开发者ID:saily,项目名称:weblate,代码行数:16,代码来源:forms.py
示例15: send_digest
def send_digest(self, language, email, changes):
with override('en' if language is None else language):
context = self.get_context()
context['changes'] = changes
subject = self.render_template(
'_subject.txt', context, digest=True
)
context['subject'] = subject
LOGGER.info(
'sending digest notification %s on %d changes to %s',
self.get_name(), len(changes), email,
)
self.send(
email,
subject,
self.render_template('.html', context, digest=True),
self.get_headers(context),
)
开发者ID:nijel,项目名称:weblate,代码行数:18,代码来源:notifications.py
示例16: clean_checksum
def clean_checksum(self):
"""Validate whether checksum is valid and fetches unit for it."""
if 'checksum' not in self.cleaned_data:
return
unit_set = self.translation.unit_set
try:
self.cleaned_data['unit'] = unit_set.filter(
id_hash=self.cleaned_data['checksum']
)[0]
except (Unit.DoesNotExist, IndexError):
LOGGER.error(
'string %s disappeared!', self.cleaned_data['checksum']
)
raise ValidationError(_(
'The string you wanted to translate is no longer available!'
))
开发者ID:nblock,项目名称:weblate,代码行数:18,代码来源:forms.py
示例17: report_error
def report_error(error, exc_info, request=None, extra_data=None):
"""Wrapper for error reporting
This can be used for store exceptions in error reporting solutions as
rollbar while handling error gracefully and giving user cleaner message.
"""
if HAS_ROLLBAR and hasattr(settings, 'ROLLBAR'):
rollbar.report_exc_info(exc_info, request, extra_data=extra_data)
LOGGER.error(
'Handled exception %s: %s',
error.__class__.__name__,
force_text(error).encode('utf-8')
)
# Print error when running testsuite
if sys.argv[1:2] == ['test']:
traceback.print_exc()
开发者ID:Yixf-Self,项目名称:weblate,代码行数:18,代码来源:util.py
示例18: translate
def translate(self, language, text, unit, user):
'''
Returns list of machine translations.
'''
language = self.convert_language(language)
if text == '':
return []
if not self.is_supported(language):
return []
try:
translations = self.download_translations(
language, text, unit, user
)
return [
{
'text': trans[0],
'quality': trans[1],
'service': trans[2],
'source': trans[3]
}
for trans in translations
]
except Exception as exc:
report_error(
exc, sys.exc_info(),
{'mt_url': self.request_url, 'mt_params': self.request_params}
)
LOGGER.error(
'Failed to fetch translations from %s',
self.name,
)
LOGGER.error(
'Last fetched URL: %s, params: %s',
self.request_url,
self.request_params,
)
raise MachineTranslationError('{}: {}'.format(
exc.__class__.__name__,
str(exc)
))
开发者ID:schuster-rainer,项目名称:weblate,代码行数:42,代码来源:base.py
示例19: mail_admins_contact
def mail_admins_contact(request, subject, message, context, sender):
"""
Sends a message to the admins, as defined by the ADMINS setting.
"""
LOGGER.info("contact form from %s", sender)
if not settings.ADMINS:
messages.error(request, _("Message could not be sent to administrator!"))
LOGGER.error("ADMINS not configured, can not send message!")
return
mail = EmailMultiAlternatives(
"%s%s" % (settings.EMAIL_SUBJECT_PREFIX, subject % context),
message % context,
to=[a[1] for a in settings.ADMINS],
headers={"Reply-To": sender},
)
mail.send(fail_silently=False)
messages.success(request, _("Message has been sent to administrator."))
开发者ID:dtschan,项目名称:weblate,代码行数:20,代码来源:views.py
示例20: clean_checksum
def clean_checksum(self):
'''
Validates whether checksum is valid and fetches unit for it.
'''
if 'checksum' not in self.cleaned_data:
return
unit_set = self.translation.unit_set
try:
self.cleaned_data['unit'] = unit_set.filter(
checksum=self.cleaned_data['checksum'],
)[0]
except (Unit.DoesNotExist, IndexError):
LOGGER.error(
'message %s disappeared!',
self.cleaned_data['checksum']
)
raise ValidationError(
_('Message you wanted to translate is no longer available!')
)
开发者ID:awesome-python,项目名称:weblate,代码行数:21,代码来源:forms.py
注:本文中的weblate.logger.LOGGER类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论