Mercurial > public > mercurial-scm > hg
comparison mercurial/ui.py @ 40760:ffd574c144d2
ui: pass in formatted message to logger.log()
This makes sure that all logger instances will handle the message arguments
properly.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sun, 11 Nov 2018 19:35:33 +0900 |
parents | fdc6eb1d650d |
children | 691c68bc1222 |
comparison
equal
deleted
inserted
replaced
40759:fdc6eb1d650d | 40760:ffd574c144d2 |
---|---|
1722 More than one loggers can be registered. Use extension or module | 1722 More than one loggers can be registered. Use extension or module |
1723 name to uniquely identify the logger instance. | 1723 name to uniquely identify the logger instance. |
1724 """ | 1724 """ |
1725 self._loggers[name] = logger | 1725 self._loggers[name] = logger |
1726 | 1726 |
1727 def log(self, event, *msg, **opts): | 1727 def log(self, event, msgfmt, *msgargs, **opts): |
1728 '''hook for logging facility extensions | 1728 '''hook for logging facility extensions |
1729 | 1729 |
1730 event should be a readily-identifiable subsystem, which will | 1730 event should be a readily-identifiable subsystem, which will |
1731 allow filtering. | 1731 allow filtering. |
1732 | 1732 |
1733 *msg should be a newline-terminated format string to log, and | 1733 msgfmt should be a newline-terminated format string to log, and |
1734 then any values to %-format into that format string. | 1734 *msgargs are %-formatted into it. |
1735 | 1735 |
1736 **opts currently has no defined meanings. | 1736 **opts currently has no defined meanings. |
1737 ''' | 1737 ''' |
1738 if not self._loggers: | 1738 if not self._loggers: |
1739 return | 1739 return |
1740 activeloggers = [l for l in self._loggers.itervalues() | 1740 activeloggers = [l for l in self._loggers.itervalues() |
1741 if l.tracked(event)] | 1741 if l.tracked(event)] |
1742 if not activeloggers: | 1742 if not activeloggers: |
1743 return | 1743 return |
1744 msg = msgfmt % msgargs | |
1744 # guard against recursion from e.g. ui.debug() | 1745 # guard against recursion from e.g. ui.debug() |
1745 registeredloggers = self._loggers | 1746 registeredloggers = self._loggers |
1746 self._loggers = {} | 1747 self._loggers = {} |
1747 try: | 1748 try: |
1748 for logger in activeloggers: | 1749 for logger in activeloggers: |