jenkins-bot has submitted this change and it was merged. Change subject: Make `--verbose` a universal argument ......................................................................
Make `--verbose` a universal argument Change the logging usage in scap so that all "useful for deployer to see" log messages are emitted at info or a higher level. Raise the default logging level for the console appender to INFO. Make the `--verbose` command line argument universal in cli.Application. This change also removes the short form `-v` argument for the scap-purge-l10n-cache script as it conflicts with the short form `-v` verbose argument. Change-Id: Ifcfcbfe1848d4b297faa6c712c8b21f15e0f92a7 --- M scap/cli.py M scap/log.py M scap/main.py M scap/tasks.py 4 files changed, 18 insertions(+), 14 deletions(-) Approvals: Ori.livneh: Looks good to me, approved Hashar: Looks good to me, but someone else must approve 20after4: Looks good to me, but someone else must approve jenkins-bot: Verified diff --git a/scap/cli.py b/scap/cli.py index 93252b3..f49a369 100644 --- a/scap/cli.py +++ b/scap/cli.py @@ -49,6 +49,10 @@ self.config['statsd_host'], int(self.config['statsd_port'])) return self._stats + @property + def verbose(self): + return self.arguments.loglevel < logging.INFO + def announce(self, *args): """Announce a message to broadcast listeners. @@ -115,6 +119,9 @@ parser.add_argument('-D', '--define', dest='defines', action='append', type=lambda v: tuple(v.split(':')), help='Set a configuration value', metavar='<name>:<value>') + parser.add_argument('-v', '--verbose', action='store_const', + const=logging.DEBUG, default=logging.INFO, dest='loglevel', + help='Verbose output') return parser @@ -141,6 +148,7 @@ def _setup_loggers(self): """Setup logging.""" log.setup_loggers(self.config) + logging.root.setLevel(self.arguments.loglevel) def main(self, *extra_args): """Main business logic of the application. @@ -173,7 +181,7 @@ :returns: exit status """ - self.logger.debug('Unhandled error:', exc_info=True) + self.logger.warn('Unhandled error:', exc_info=True) self.logger.error('%s failed: <%s> %s', self.program_name, type(ex).__name__, ex) return 70 @@ -224,7 +232,7 @@ """ # Bootstrap the logging system logging.basicConfig( - level=logging.DEBUG, + level=logging.INFO, format=log.CONSOLE_LOG_FORMAT, datefmt='%H:%M:%S') diff --git a/scap/log.py b/scap/log.py index 353140b..8845db7 100644 --- a/scap/log.py +++ b/scap/log.py @@ -306,7 +306,7 @@ """ self.start = time.time() self.mark_start = self.start - self.logger.debug('Started %s' % self.label) + self.logger.info('Started %s' % self.label) return self def __exit__(self, exc_type, exc_value, traceback): diff --git a/scap/main.py b/scap/main.py index c3b05d5..6f0b1a9 100644 --- a/scap/main.py +++ b/scap/main.py @@ -57,7 +57,7 @@ class PurgeL10nCache(cli.Application): """Purge the localization cache for an inactive MediaWiki version.""" - @cli.argument('-v', '--version', required=True, + @cli.argument('--version', required=True, help='MediaWiki version (eg 1.23wmf16)') def main(self, *extra_args): if self.arguments.version.startswith('php-'): @@ -100,8 +100,6 @@ args.message = ' '.join(args.message) or '(no message)' return args, extra_args - @cli.argument('-v', '--verbose', action='store_true', - help='Verbose output') @cli.argument('message', nargs=argparse.REMAINDER, help='Log message for SAL') def main(self, *extra_args): @@ -142,7 +140,7 @@ with log.Timer('mw-update-l10n', self.stats): for version, wikidb in self.active_wikiversions().items(): tasks.update_localization_cache( - version, wikidb, self.arguments.verbose, self.config) + version, wikidb, self.verbose, self.config) # Compute git version information with log.Timer('cache_git_info', self.stats): @@ -221,7 +219,7 @@ return 1 def _handle_exception(self, ex): - self.logger.debug('Unhandled error:', exc_info=True) + self.logger.warn('Unhandled error:', exc_info=True) self.announce('scap failed: %s %s (duration: %s)', type(ex).__name__, ex, self.human_duration) return 1 @@ -265,9 +263,7 @@ class UpdateL10n(cli.Application): """Update localization files""" - @cli.argument('-v', '--verbose', action='store_true', - help='Verbose output') def main(self, *extra_args): for version, wikidb in self.active_wikiversions().items(): tasks.update_localization_cache( - version, wikidb, self.arguments.verbose, self.config) + version, wikidb, self.verbose, self.config) diff --git a/scap/tasks.py b/scap/tasks.py index b2d7d93..01556fe 100644 --- a/scap/tasks.py +++ b/scap/tasks.py @@ -141,7 +141,7 @@ os.rename(tmp_cdb_file, cdb_file) os.chmod(cdb_file, 0664) - logger.debug('Compiled %s to %s', json_file, cdb_file) + logger.info('Compiled %s to %s', json_file, cdb_file) def merge_cdb_updates(directory, pool_size, trust_mtime=False): @@ -244,7 +244,7 @@ rsync = ('sudo', '-u', 'mwdeploy') + DEFAULT_RSYNC_ARGS rsync += ('%s::common' % server, cfg['deploy_dir']) - logger.debug('Copying to %s from %s', socket.getfqdn(), server) + logger.info('Copying to %s from %s', socket.getfqdn(), server) stats = log.Stats(cfg['statsd_host'], int(cfg['statsd_port'])) with log.Timer('rsync common', stats): subprocess.check_call(rsync) @@ -407,7 +407,7 @@ deploy_dir = os.path.realpath(cfg['deploy_dir']) stage_dir = os.path.realpath(cfg['stage_dir']) if stage_dir != deploy_dir: - logger.debug('Copying to local copy') + logger.debug('Copying ExtensionMessages-*.php to local copy') utils.sudo_check_call('mwdeploy', 'cp "%s" "%s/wmf-config/"' % ( extension_messages, cfg['deploy_dir']), -- To view, visit https://gerrit.wikimedia.org/r/134730 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ifcfcbfe1848d4b297faa6c712c8b21f15e0f92a7 Gerrit-PatchSet: 2 Gerrit-Project: mediawiki/tools/scap Gerrit-Branch: master Gerrit-Owner: BryanDavis <bda...@wikimedia.org> Gerrit-Reviewer: 20after4 <mmod...@wikimedia.org> Gerrit-Reviewer: BryanDavis <bda...@wikimedia.org> Gerrit-Reviewer: Chad <ch...@wikimedia.org> Gerrit-Reviewer: Hashar <has...@free.fr> Gerrit-Reviewer: Ori.livneh <o...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits