Measure time it takes to init URL completion.

This commit is contained in:
Florian Bruhin 2015-03-14 12:48:28 +01:00
parent a857b9a638
commit 70cd8e74eb
3 changed files with 16 additions and 4 deletions

View File

@ -32,7 +32,7 @@ from PyQt5.QtCore import pyqtSlot, Qt
from qutebrowser.completion.models import miscmodels, urlmodel, configmodel
from qutebrowser.completion.models.sortfilter import (
CompletionFilterModel as CFM)
from qutebrowser.utils import objreg, usertypes, log
from qutebrowser.utils import objreg, usertypes, log, debug
from qutebrowser.config import configdata
@ -56,8 +56,9 @@ def _init_helptopic_completion():
def _init_url_completion():
"""Initialize the URL completion model."""
log.completion.debug("Initializing URL completion.")
_instances[usertypes.Completion.url] = CFM(
urlmodel.UrlCompletionModel(), dumb_sort=Qt.DescendingOrder)
with debug.log_time(log.completion, 'URL completion init'):
_instances[usertypes.Completion.url] = CFM(
urlmodel.UrlCompletionModel(), dumb_sort=Qt.DescendingOrder)
def _init_setting_completions():

View File

@ -25,7 +25,7 @@ Contains:
from PyQt5.QtCore import QSortFilterProxyModel, QModelIndex, Qt
from qutebrowser.utils import log, qtutils
from qutebrowser.utils import log, qtutils, debug
from qutebrowser.completion.models import base as completion

View File

@ -23,6 +23,8 @@ import re
import sys
import inspect
import functools
import datetime
import contextlib
from PyQt5.QtCore import QEvent, QMetaMethod
@ -248,3 +250,12 @@ def format_call(func, args=None, kwargs=None, full=True):
else:
name = func.__name__
return '{}({})'.format(name, _format_args(args, kwargs))
@contextlib.contextmanager
def log_time(logger, action='operation'):
started = datetime.datetime.now()
yield
finished = datetime.datetime.now()
delta = (finished - started).total_seconds()
logger.debug("{} took {} seconds.".format(action.capitalize(), delta))