Pass arguments to the logger the correct way

This commit is contained in:
Roberto Rosario
2014-11-02 20:55:21 -04:00
parent 654022807f
commit ba1729106f
30 changed files with 106 additions and 107 deletions

View File

@@ -130,7 +130,7 @@ class AccessEntryManager(models.Manager):
raise PermissionDenied(ugettext(u'Insufficient access.'))
def get_allowed_class_objects(self, permission, actor, cls, related=None):
logger.debug('related: %s' % related)
logger.debug('related: %s', related)
actor = AnonymousUserSingleton.objects.passthru_check(actor)
actor_type = ContentType.objects.get_for_model(actor)
@@ -169,7 +169,7 @@ class AccessEntryManager(models.Manager):
if related:
actor_query = Q(holder_type=actor_type, holder_id=actor.pk, permission=permission.get_stored_permission)
master_list = [obj.content_object for obj in self.model.objects.select_related().filter(actor_query | total_queries)]
logger.debug('master_list: %s' % master_list)
logger.debug('master_list: %s', master_list)
# TODO: update to use Q objects and check performance diff
# kwargs = {'%s__in' % related: master_list}
# Q(**kwargs)
@@ -204,8 +204,8 @@ class AccessEntryManager(models.Manager):
Returns a list of actors that hold at least one permission for
a specific object
"""
logger.debug('obj: %s' % obj)
logger.debug('actor: %s' % actor)
logger.debug('obj: %s', obj)
logger.debug('actor: %s', actor)
if isinstance(actor, User) and not db_only:
if actor.is_superuser or actor.is_staff:
@@ -220,8 +220,8 @@ class AccessEntryManager(models.Manager):
Filter a list of objects or a QuerySet elements depending on
whether the actor holds the specified permission
"""
logger.debug('exception_on_empty: %s' % exception_on_empty)
logger.debug('object_list: %s' % object_list)
logger.debug('exception_on_empty: %s', exception_on_empty)
logger.debug('object_list: %s', object_list)
if isinstance(actor, User):
if actor.is_superuser or actor.is_staff:
@@ -238,7 +238,7 @@ class AccessEntryManager(models.Manager):
try:
# Try to process as a QuerySet
qs = object_list.filter(pk__in=[obj.pk for obj in self.get_allowed_class_objects(permission, actor, object_list[0].__class__, related)])
logger.debug('qs: %s' % qs)
logger.debug('qs: %s', qs)
if qs.count() == 0 and exception_on_empty:
raise PermissionDenied
@@ -247,7 +247,7 @@ class AccessEntryManager(models.Manager):
except AttributeError:
# Fallback to a filtered list
object_list = list(set(object_list) & set(self.get_allowed_class_objects(permission, actor, object_list[0].__class__, related)))
logger.debug('object_list: %s' % object_list)
logger.debug('object_list: %s', object_list)
if len(object_list) == 0 and exception_on_empty:
raise PermissionDenied

View File

@@ -18,16 +18,16 @@ class CheckAccessNode(Node):
def render(self, context):
permission_list = Variable(self.permission_list).resolve(context)
logger.debug('permission_list: %s' % u','.join([unicode(p) for p in permission_list]))
logger.debug('permission_list: %s', u','.join([unicode(p) for p in permission_list]))
try:
# Check access_object, useful for document_page views
obj = Variable('access_object').resolve(context)
logger.debug('access_object: %s' % obj)
logger.debug('access_object: %s', obj)
except VariableDoesNotExist:
try:
obj = Variable(self.obj).resolve(context)
logger.debug('obj: %s' % obj)
logger.debug('obj: %s', obj)
except VariableDoesNotExist:
context[u'access'] = False
logger.debug('no obj, access False')
@@ -40,7 +40,7 @@ class CheckAccessNode(Node):
return u''
requester = Variable(self.requester).resolve(context)
logger.debug('requester: %s' % requester)
logger.debug('requester: %s', requester)
if obj:
try:

View File

@@ -6,14 +6,14 @@ from django.contrib.contenttypes.models import ContentType
from common.models import AnonymousUserSingleton
from .models import AccessEntry, DefaultAccessEntry, CreatorSingleton
from .classes import get_source_object
from .models import AccessEntry, CreatorSingleton, DefaultAccessEntry
logger = logging.getLogger(__name__)
def apply_default_acls(obj, actor=None):
logger.debug('actor, init: %s' % actor)
logger.debug('actor, init: %s', actor)
obj = get_source_object(obj)
if actor:

View File

@@ -39,7 +39,7 @@ def acl_list_for(request, obj, extra_context=None):
except PermissionDenied:
AccessEntry.objects.check_access(ACLS_VIEW_ACL, request.user, obj)
logger.debug('obj: %s' % obj)
logger.debug('obj: %s', obj)
context = {
'object_list': AccessEntry.objects.get_holders_for(obj),
@@ -214,8 +214,8 @@ def acl_grant(request):
'title_suffix': u''.join(title_suffix),
}
logger.debug('navigation_object_count: %d' % navigation_object_count)
logger.debug('navigation_object: %s' % navigation_object)
logger.debug('navigation_object_count: %d', navigation_object_count)
logger.debug('navigation_object: %s', navigation_object)
if navigation_object_count == 1:
context['object'] = navigation_object.source_object
@@ -306,8 +306,8 @@ def acl_revoke(request):
'title_suffix': u''.join(title_suffix),
}
logger.debug('navigation_object_count: %d' % navigation_object_count)
logger.debug('navigation_object: %s' % navigation_object)
logger.debug('navigation_object_count: %d', navigation_object_count)
logger.debug('navigation_object: %s', navigation_object)
if navigation_object_count == 1:
context['object'] = navigation_object.source_object
@@ -388,12 +388,12 @@ def acl_setup_valid_classes(request):
def acl_class_acl_list(request, access_object_class_gid):
logger.debug('access_object_class_gid: %s' % access_object_class_gid)
logger.debug('access_object_class_gid: %s', access_object_class_gid)
Permission.objects.check_permissions(request.user, [ACLS_CLASS_VIEW_ACL])
access_object_class = AccessObjectClass.get(gid=access_object_class_gid)
logger.debug('access_object_class: %s' % access_object_class)
logger.debug('access_object_class: %s', access_object_class)
context = {
'object_list': DefaultAccessEntry.objects.get_holders_for(access_object_class.source_object),
@@ -551,8 +551,8 @@ def acl_class_multiple_grant(request):
'title_suffix': u''.join(title_suffix),
}
logger.debug('navigation_object_count: %d' % navigation_object_count)
logger.debug('navigation_object: %s' % navigation_object)
logger.debug('navigation_object_count: %d', navigation_object_count)
logger.debug('navigation_object: %s', navigation_object)
if navigation_object_count == 1:
context['object'] = navigation_object
@@ -629,8 +629,8 @@ def acl_class_multiple_revoke(request):
'title_suffix': u''.join(title_suffix),
}
logger.debug('navigation_object_count: %d' % navigation_object_count)
logger.debug('navigation_object: %s' % navigation_object)
logger.debug('navigation_object_count: %d', navigation_object_count)
logger.debug('navigation_object: %s', navigation_object)
if navigation_object_count == 1:
context['object'] = navigation_object

View File

@@ -27,7 +27,7 @@ class DocumentCheckoutManager(models.Manager):
def expired_check_outs(self):
expired_list = Document.objects.filter(pk__in=self.model.objects.filter(expiration_datetime__lte=now()).values_list('document__pk', flat=True))
logger.debug('expired_list: %s' % expired_list)
logger.debug('expired_list: %s', expired_list)
return expired_list
def check_in_expired_check_outs(self):

View File

@@ -16,9 +16,9 @@ def task_check_expired_check_outs():
logger.debug('executing...')
lock_id = u'task_expired_check_outs'
try:
logger.debug('trying to acquire lock: %s' % lock_id)
logger.debug('trying to acquire lock: %s', lock_id)
lock = Lock.acquire_lock(lock_id, LOCK_EXPIRE)
logger.debug('acquired lock: %s' % lock_id)
logger.debug('acquired lock: %s', lock_id)
DocumentCheckout.objects.check_in_expired_check_outs()
lock.release()
except LockError:

View File

@@ -49,7 +49,7 @@ def create_superuser_and_anonymous_user(sender, **kwargs):
try:
auth_models.User.objects.get(username=AUTO_ADMIN_USERNAME)
except auth_models.User.DoesNotExist:
logger.info('Creating super admin user -- login: %s, password: %s' % (AUTO_ADMIN_USERNAME, AUTO_ADMIN_PASSWORD))
logger.info('Creating super admin user -- login: %s, password: %s', AUTO_ADMIN_USERNAME, AUTO_ADMIN_PASSWORD)
assert auth_models.User.objects.create_superuser(AUTO_ADMIN_USERNAME, 'autoadmin@autoadmin.com', AUTO_ADMIN_PASSWORD)
admin = auth_models.User.objects.get(username=AUTO_ADMIN_USERNAME)
# Store the auto admin password properties to display the first login message
@@ -59,7 +59,7 @@ def create_superuser_and_anonymous_user(sender, **kwargs):
auto_admin_properties.password_hash = admin.password
auto_admin_properties.save()
else:
logger.info('Super admin user already exists. -- login: %s' % AUTO_ADMIN_USERNAME)
logger.info('Super admin user already exists. -- login: %s', AUTO_ADMIN_USERNAME)
@receiver(post_save, dispatch_uid='auto_admin_account_passwd_change', sender=User)

View File

@@ -261,13 +261,13 @@ def _lazy_load(fn):
def load_backend(backend_string):
logger.debug('loading: %s' % backend_string)
logger.debug('loading: %s', backend_string)
module_name, klass = backend_string.rsplit('.', 1)
try:
return getattr(import_module(module_name), klass)
except ImportError as exception:
logger.debug('error importing: %s; %s' % (backend_string, exception))
logger.debug('error importing: %s; %s', backend_string, exception)
raise

View File

@@ -101,11 +101,11 @@ def convert(input_filepath, output_filepath=None, cleanup_files=False, mimetype=
def get_page_count(input_filepath):
logger.debug('office_converter: %s' % office_converter)
logger.debug('office_converter: %s', office_converter)
if office_converter:
try:
office_converter.convert(input_filepath)
logger.debug('office_converter.exists: %s' % office_converter.exists)
logger.debug('office_converter.exists: %s', office_converter.exists)
if office_converter.exists:
input_filepath = office_converter.output_filepath

View File

@@ -110,7 +110,7 @@ class OfficeConverterBackendDirect(object):
self.libreoffice_path = LIBREOFFICE_PATH
if not os.path.exists(self.libreoffice_path):
raise OfficeBackendError('cannot find LibreOffice executable')
logger.debug('self.libreoffice_path: %s' % self.libreoffice_path)
logger.debug('self.libreoffice_path: %s', self.libreoffice_path)
def convert(self, input_filepath, output_filepath):
"""
@@ -129,24 +129,24 @@ class OfficeConverterBackendDirect(object):
command.append(u'--outdir')
command.append(TEMPORARY_DIRECTORY)
logger.debug('command: %s' % command)
logger.debug('command: %s', command)
try:
os.environ['HOME'] = TEMPORARY_DIRECTORY
proc = subprocess.Popen(command, close_fds=True, stderr=subprocess.PIPE, stdout=subprocess.PIPE)
return_code = proc.wait()
logger.debug('return_code: %s' % return_code)
logger.debug('return_code: %s', return_code)
readline = proc.stderr.readline()
logger.debug('stderr: %s' % readline)
logger.debug('stderr: %s', readline)
if return_code != 0:
raise OfficeBackendError(readline)
filename, extension = os.path.splitext(os.path.basename(self.input_filepath))
logger.debug('filename: %s' % filename)
logger.debug('extension: %s' % extension)
logger.debug('filename: %s', filename)
logger.debug('extension: %s', extension)
converted_output = os.path.join(TEMPORARY_DIRECTORY, os.path.extsep.join([filename, 'pdf']))
logger.debug('converted_output: %s' % converted_output)
logger.debug('converted_output: %s', converted_output)
os.rename(converted_output, self.output_filepath)
except OSError as exception:

View File

@@ -148,7 +148,7 @@ class GPG(object):
else:
verify = self.gpg.verify_file(input_descriptor)
logger.debug('verify.status: %s' % getattr(verify, 'status', None))
logger.debug('verify.status: %s', getattr(verify, 'status', None))
if verify:
logger.debug('verify ok')
return verify
@@ -278,7 +278,7 @@ class GPG(object):
def import_key(self, key_data):
import_result = self.gpg.import_keys(key_data)
logger.debug('import_result: %s' % import_result)
logger.debug('import_result: %s', import_result)
if import_result:
return Key.get(self, import_result.fingerprints[0], secret=False)

View File

@@ -43,7 +43,7 @@ class DocumentVersionSignatureManager(models.Manager):
return False
def has_embedded_signature(self, document):
logger.debug('document: %s' % document)
logger.debug('document: %s', document)
try:
document_signature = self.get_document_signature(document)

View File

@@ -143,7 +143,7 @@ class Document(models.Model):
version = self.latest_version.pk
image_cache_name = self.get_image_cache_name(page=page, version=version)
logger.debug('image_cache_name: %s' % image_cache_name)
logger.debug('image_cache_name: %s', image_cache_name)
return convert(input_filepath=image_cache_name, cleanup_files=False, size=size, zoom=zoom, rotation=rotation)
@@ -157,7 +157,7 @@ class Document(models.Model):
rotation = rotation % 360
file_path = self.get_valid_image(size=size, page=page, zoom=zoom, rotation=rotation, version=version)
logger.debug('file_path: %s' % file_path)
logger.debug('file_path: %s', file_path)
if as_base64:
mimetype = get_mimetype(open(file_path, 'r'), file_path, mimetype_only=True)[0]
@@ -199,7 +199,7 @@ class Document(models.Model):
else:
new_version_dict = {}
logger.debug('new_version_dict: %s' % new_version_dict)
logger.debug('new_version_dict: %s', new_version_dict)
new_version = DocumentVersion(
document=self,
@@ -328,7 +328,7 @@ class DocumentVersion(models.Model):
return self.get_formated_version()
def get_new_version_dict(self, version_update_type):
logger.debug('version_update_type: %s' % version_update_type)
logger.debug('version_update_type: %s', version_update_type)
if version_update_type == VERSION_UPDATE_MAJOR:
return {

View File

@@ -100,7 +100,7 @@ class SearchModel(object):
}
)
logger.debug('search_dict: %s' % search_dict)
logger.debug('search_dict: %s', search_dict)
return self.execute_search(search_dict, global_and_search=False)
@@ -108,14 +108,14 @@ class SearchModel(object):
search_dict = {}
for key, value in dictionary.items():
logger.debug('key: %s' % key)
logger.debug('value: %s' % value)
logger.debug('key: %s', key)
logger.debug('value: %s', value)
if key == 'page':
continue
if value:
search_field = self.get_search_field(key)
logger.debug('search_field: %s' % search_field)
logger.debug('search_field: %s', search_field)
search_dict.setdefault(search_field.get_model(), {
'searches': [],
'label': search_field.label,
@@ -128,7 +128,7 @@ class SearchModel(object):
}
)
logger.debug('search_dict: %s' % search_dict)
logger.debug('search_dict: %s', search_dict)
return self.execute_search(search_dict, global_and_search=True)
@@ -138,7 +138,7 @@ class SearchModel(object):
result_set = set()
for model, data in search_dict.items():
logger.debug('model: %s' % model)
logger.debug('model: %s', model)
# Initialize per model result set
model_result_set = set()
@@ -147,14 +147,14 @@ class SearchModel(object):
# Fashion a list of queries for a field for each term
field_query_list = self.assemble_query(query_entry['terms'], query_entry['field_name'])
logger.debug('field_query_list: %s' % field_query_list)
logger.debug('field_query_list: %s', field_query_list)
# Initialize per field result set
field_result_set = set()
# Get results per search field
for query in field_query_list:
logger.debug('query: %s' % query)
logger.debug('query: %s', query)
term_query_result_set = set(model.objects.filter(query).values_list(data['return_value'], flat=True))
# Convert the QuerySet to a Python set and perform the
@@ -168,8 +168,8 @@ class SearchModel(object):
else:
field_result_set &= term_query_result_set
logger.debug('term_query_result_set: %s' % term_query_result_set)
logger.debug('field_result_set: %s' % field_result_set)
logger.debug('term_query_result_set: %s', term_query_result_set)
logger.debug('field_result_set: %s', field_result_set)
if global_and_search:
if not model_result_set:

View File

@@ -24,7 +24,7 @@ class FolderForm(forms.ModelForm):
class FolderListForm(forms.Form):
def __init__(self, *args, **kwargs):
user = kwargs.pop('user', None)
logger.debug('user: %s' % user)
logger.debug('user: %s', user)
super(FolderListForm, self).__init__(*args, **kwargs)
queryset = Folder.objects.all()

View File

@@ -238,13 +238,13 @@ def folder_document_remove(request, folder_id, document_id=None, document_id_lis
messages.error(request, _(u'Must provide at least one folder document.'))
return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse('main:home')))
logger.debug('folder_documents (pre permission check): %s' % folder_documents)
logger.debug('folder_documents (pre permission check): %s', folder_documents)
try:
Permission.objects.check_permissions(request.user, [PERMISSION_FOLDER_REMOVE_DOCUMENT])
except PermissionDenied:
folder_documents = AccessEntry.objects.filter_objects_by_access(PERMISSION_FOLDER_REMOVE_DOCUMENT, request.user, folder_documents, exception_on_empty=True)
logger.debug('folder_documents (post permission check): %s' % folder_documents)
logger.debug('folder_documents (post permission check): %s', folder_documents)
previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse('main:home'))))
next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse('main:home'))))
@@ -283,7 +283,7 @@ def folder_document_multiple_remove(request, folder_id):
def folder_acl_list(request, folder_pk):
folder = get_object_or_404(Folder, pk=folder_pk)
logger.debug('folder: %s' % folder)
logger.debug('folder: %s', folder)
return acl_list_for(
request,

View File

@@ -336,7 +336,7 @@ def smart_link_condition_delete(request, smart_link_condition_pk):
def smart_link_acl_list(request, smart_link_pk):
smart_link = get_object_or_404(SmartLink, pk=smart_link_pk)
logger.debug('smart_link: %s' % smart_link)
logger.debug('smart_link: %s', smart_link)
return acl_list_for(
request,

View File

@@ -14,13 +14,13 @@ logger = logging.getLogger(__name__)
class LockManager(models.Manager):
def acquire_lock(self, name, timeout=None):
logger.debug('trying to acquire lock: %s' % name)
logger.debug('trying to acquire lock: %s', name)
lock = self.model(name=name, timeout=timeout)
try:
with transaction.atomic():
lock.save(force_insert=True)
logger.debug('acquired lock: %s' % name)
logger.debug('acquired lock: %s', name)
return lock
except IntegrityError as exception:
logger.debug('IntegrityError: %s', exception)
@@ -30,16 +30,16 @@ class LockManager(models.Manager):
lock = self.model.objects.get(name=name)
except self.model.DoesNotExist:
# Table based locking
logger.debug('lock: %s does not exist' % name)
logger.debug('lock: %s does not exist', name)
raise LockError('Unable to acquire lock')
if now() > lock.creation_datetime + datetime.timedelta(seconds=lock.timeout):
logger.debug('reseting deleting stale lock: %s' % name)
logger.debug('reseting deleting stale lock: %s', name)
lock.timeout = timeout
logger.debug('trying to reacquire stale lock: %s' % name)
logger.debug('trying to reacquire stale lock: %s', name)
lock.save()
logger.debug('reacquired stale lock: %s' % name)
logger.debug('reacquired stale lock: %s', name)
return lock
else:
logger.debug('unable to acquire lock: %s' % name)
logger.debug('unable to acquire lock: %s', name)
raise LockError('Unable to acquire lock')

View File

@@ -36,7 +36,7 @@ logger = logging.getLogger(__name__)
@receiver(post_document_type_change, dispatch_uid='post_post_document_type_change_metadata', sender=Document)
def post_post_document_type_change_metadata(sender, instance, **kwargs):
logger.debug('received post_document_type_change')
logger.debug('instance: %s' % instance)
logger.debug('instance: %s', instance)
# Delete existing document metadata
for metadata in instance.metadata.all():
metadata.delete()

View File

@@ -239,7 +239,6 @@ class Link(object):
objects.setdefault(resolved_object, {})
objects[resolved_object]['label'] = object_label
#logger.debug('objects: %s' % objects)
return objects
@classmethod

View File

@@ -40,7 +40,7 @@ def document_ocr_submit(self):
@receiver(post_version_upload, dispatch_uid='post_version_upload_ocr', sender=DocumentVersion)
def post_version_upload_ocr(sender, instance, **kwargs):
logger.debug('received post_version_upload')
logger.debug('instance: %s' % instance)
logger.debug('instance: %s', instance)
if instance.document.document_type.ocr:
instance.document.submit_for_ocr()

View File

@@ -46,25 +46,25 @@ def do_document_ocr(document):
document_filepath = document_page.document.get_image_cache_name(page=document_page.page_number, version=document_page.document_version.pk)
logger.debug('document_filepath: %s' % document_filepath)
logger.debug('document_filepath: %s', document_filepath)
unpaper_input = convert(document_filepath, file_format=UNPAPER_FILE_FORMAT)
logger.debug('unpaper_input: %s' % unpaper_input)
logger.debug('unpaper_input: %s', unpaper_input)
unpaper_output = execute_unpaper(input_filepath=unpaper_input)
logger.debug('unpaper_output: %s' % unpaper_output)
logger.debug('unpaper_output: %s', unpaper_output)
# Convert to TIFF
pre_ocr_filepath = convert(input_filepath=unpaper_output, file_format=DEFAULT_OCR_FILE_FORMAT)
logger.debug('pre_ocr_filepath: %s' % pre_ocr_filepath)
logger.debug('pre_ocr_filepath: %s', pre_ocr_filepath)
# Tesseract needs an explicit file extension
pre_ocr_filepath_w_ext = os.extsep.join([pre_ocr_filepath, DEFAULT_OCR_FILE_EXTENSION])
logger.debug('pre_ocr_filepath_w_ext: %s' % pre_ocr_filepath_w_ext)
logger.debug('pre_ocr_filepath_w_ext: %s', pre_ocr_filepath_w_ext)
os.rename(pre_ocr_filepath, pre_ocr_filepath_w_ext)
try:

View File

@@ -36,8 +36,8 @@ def register_parser(mimetypes, parsers):
def parse_document_page(document_page, descriptor=None, mimetype=None):
logger.debug('executing')
logger.debug('document_page: %s' % document_page)
logger.debug('document mimetype: %s' % document_page.document.file_mimetype)
logger.debug('document_page: %s', document_page)
logger.debug('document mimetype: %s', document_page.document.file_mimetype)
if not mimetype:
mimetype = document_page.document.file_mimetype
@@ -45,7 +45,7 @@ def parse_document_page(document_page, descriptor=None, mimetype=None):
if mimetype not in CONVERTER_OFFICE_FILE_MIMETYPES:
mimetype = 'text/plain'
logger.debug('fallback to mimetype text/plain')
logger.debug('used mimetype: %s' % mimetype)
logger.debug('used mimetype: %s', mimetype)
try:
for parser in mimetype_registry[mimetype]:
@@ -70,7 +70,7 @@ class Parser(object):
"""
def parse(self, document_page, descriptor=None):
raise NotImplementedError("Your %s class has not defined a parse() method, which is required." % self.__class__.__name__)
raise NotImplementedError('Your %s class has not defined a parse() method, which is required.', self.__class__.__name__)
class SlateParser(Parser):
@@ -129,7 +129,7 @@ class PopplerParser(Parser):
self.pdftotext_path = PDFTOTEXT_PATH if PDFTOTEXT_PATH else u'/usr/bin/pdftotext'
if not os.path.exists(self.pdftotext_path):
raise ParserError('cannot find pdftotext executable')
logger.debug('self.pdftotext_path: %s' % self.pdftotext_path)
logger.debug('self.pdftotext_path: %s', self.pdftotext_path)
def parse(self, document_page, descriptor=None):
logger.debug('parsing PDF with PopplerParser')
@@ -144,7 +144,7 @@ class PopplerParser(Parser):
logger.debug('document_file: %s', document_file)
logger.debug('parsing PDF page %s' % pagenum)
logger.debug('parsing PDF page %s', pagenum)
command = []
command.append(self.pdftotext_path)

View File

@@ -22,18 +22,18 @@ LOCK_EXPIRE = 60 * 10 # Adjust to worst case scenario
def task_do_ocr(document_pk):
lock_id = u'task_do_ocr_doc-%d' % document_pk
try:
logger.debug('trying to acquire lock: %s' % lock_id)
logger.debug('trying to acquire lock: %s', lock_id)
# Acquire lock to avoid doing OCR on the same document more than once
# concurrently
lock = Lock.acquire_lock(lock_id, LOCK_EXPIRE)
logger.debug('acquired lock: %s' % lock_id)
logger.debug('acquired lock: %s', lock_id)
document = None
try:
logger.info('Starting document OCR for document: %d' % document_pk)
logger.info('Starting document OCR for document: %d', document_pk)
document = Document.objects.get(pk=document_pk)
do_document_ocr(document)
except Exception as exception:
logger.error('OCR error for document: %d; %s' % (document_pk, exception))
logger.error('OCR error for document: %d; %s', document_pk, exception)
document_queue = DocumentQueue.objects.get(name='default')
if document:
queue_document, created = document_queue.documents.get_or_create(document=document)
@@ -50,7 +50,7 @@ def task_do_ocr(document_pk):
queue_document.save()
else:
logger.info('OCR for document: %d ended' % document_pk)
logger.info('OCR for document: %d ended', document_pk)
document_queue = DocumentQueue.objects.get(name='default')
try:
queue_document = document_queue.documents.get(document=document)

View File

@@ -151,7 +151,7 @@ class StoredPermission(models.Model):
def requester_has_this(self, actor):
actor = AnonymousUserSingleton.objects.passthru_check(actor)
logger.debug('actor: %s' % actor)
logger.debug('actor: %s', actor)
if isinstance(actor, User):
if actor.is_superuser or actor.is_staff:
return True

View File

@@ -63,7 +63,7 @@ class StagingUploadForm(UploadBaseForm):
(staging_file.encoded_filename, unicode(staging_file)) for staging_file in self.source.get_files()
]
except Exception as exception:
logger.error('exception: %s' % exception)
logger.error('exception: %s', exception)
pass
# Put staging_list field first in the field order list

View File

@@ -224,7 +224,7 @@ class EmailBaseModel(IntervalBaseModel):
for part in email.walk():
disposition = part.get('Content-Disposition', 'none')
logger.debug('Disposition: %s' % disposition)
logger.debug('Disposition: %s', disposition)
if disposition.startswith('attachment'):
raw_filename = part.get_filename()
@@ -235,7 +235,7 @@ class EmailBaseModel(IntervalBaseModel):
filename = _('attachment-%i') % counter
counter += 1
logger.debug('filename: %s' % filename)
logger.debug('filename: %s', filename)
file_object = Attachment(part, name=filename)
source.upload_file(file_object, expand=(source.uncompress == SOURCE_UNCOMPRESS_CHOICE_Y), document_type=source.document_type)
@@ -253,8 +253,8 @@ class POP3Email(EmailBaseModel):
def check_source(self):
try:
logger.debug('Starting POP3 email fetch')
logger.debug('host: %s' % self.host)
logger.debug('ssl: %s' % self.ssl)
logger.debug('host: %s', self.host)
logger.debug('ssl: %s', self.ssl)
if self.ssl:
mailbox = poplib.POP3_SSL(self.host, self.port)
@@ -268,12 +268,12 @@ class POP3Email(EmailBaseModel):
logger.debug('messages_info:')
logger.debug(messages_info)
logger.debug('messages count: %s' % len(messages_info[1]))
logger.debug('messages count: %s', len(messages_info[1]))
for message_info in messages_info[1]:
message_number, message_size = message_info.split()
logger.debug('message_number: %s' % message_number)
logger.debug('message_size: %s' % message_size)
logger.debug('message_number: %s', message_number)
logger.debug('message_size: %s', message_size)
complete_message = '\n'.join(mailbox.retr(message_number)[1])
@@ -282,7 +282,7 @@ class POP3Email(EmailBaseModel):
mailbox.quit()
except Exception as exception:
logger.error('Unhandled exception: %s' % exception)
logger.error('Unhandled exception: %s', exception)
# TODO: Add user notification
class Meta:
@@ -299,8 +299,8 @@ class IMAPEmail(EmailBaseModel):
def check_source(self):
try:
logger.debug('Starting IMAP email fetch')
logger.debug('host: %s' % self.host)
logger.debug('ssl: %s' % self.ssl)
logger.debug('host: %s', self.host)
logger.debug('ssl: %s', self.ssl)
if self.ssl:
mailbox = imaplib.IMAP4_SSL(self.host, self.port)
@@ -313,10 +313,10 @@ class IMAPEmail(EmailBaseModel):
status, data = mailbox.search(None, 'NOT', 'DELETED')
if data:
messages_info = data[0].split()
logger.debug('messages count: %s' % len(messages_info))
logger.debug('messages count: %s', len(messages_info))
for message_number in messages_info:
logger.debug('message_number: %s' % message_number)
logger.debug('message_number: %s', message_number)
status, data = mailbox.fetch(message_number, '(RFC822)')
EmailBaseModel.process_message(source=self, message=data[0][1])
mailbox.store(message_number, '+FLAGS', '\\Deleted')
@@ -325,7 +325,7 @@ class IMAPEmail(EmailBaseModel):
mailbox.close()
mailbox.logout()
except Exception as exception:
logger.error('Unhandled exception: %s' % exception)
logger.error('Unhandled exception: %s', exception)
# TODO: Add user notification
class Meta:

View File

@@ -29,7 +29,7 @@ class StagingFolderSerializer(serializers.HyperlinkedModelSerializer):
try:
return [StagingFolderFileSerializer(entry, context=self.context).data for entry in obj.get_files()]
except Exception as exception:
logger.error('unhandled exception: %s' % exception)
logger.error('unhandled exception: %s', exception)
return []
class Meta:

View File

@@ -28,7 +28,7 @@ class TagForm(forms.ModelForm):
class TagListForm(forms.Form):
def __init__(self, *args, **kwargs):
user = kwargs.pop('user', None)
logger.debug('user: %s' % user)
logger.debug('user: %s', user)
super(TagListForm, self).__init__(*args, **kwargs)
queryset = Tag.objects.all()

View File

@@ -337,7 +337,7 @@ def multiple_documents_selection_tag_remove(request):
def tag_acl_list(request, tag_pk):
tag = get_object_or_404(Tag, pk=tag_pk)
logger.debug('tag: %s' % tag)
logger.debug('tag: %s', tag)
return acl_list_for(
request,