scanner: Add -q and -v options for controlling log output
This commit is contained in:
parent
beac2e80ed
commit
cdda3bc5dd
@ -25,6 +25,10 @@ v0.10.0 (in development)
|
||||
- Make ``mopidy-scan`` ignore invalid dates, e.g. dates in years outside the
|
||||
range 1-9999.
|
||||
|
||||
- Make ``mopidy-scan`` accept :opt:`-q`/:opt:`--quiet` and
|
||||
:opt:`-v`/:opt:`--verbose` options to control the amount of logging output
|
||||
when scanning.
|
||||
|
||||
**HTTP frontend**
|
||||
|
||||
- Added new optional HTTP frontend which exposes Mopidy's core API through
|
||||
|
||||
@ -1,11 +1,35 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import logging
|
||||
import datetime
|
||||
import logging
|
||||
import optparse
|
||||
import os
|
||||
import sys
|
||||
|
||||
import gobject
|
||||
gobject.threads_init()
|
||||
|
||||
|
||||
# Extract any non-GStreamer arguments, and leave the GStreamer arguments for
|
||||
# processing by GStreamer. This needs to be done before GStreamer is imported,
|
||||
# so that GStreamer doesn't hijack e.g. ``--help``.
|
||||
# NOTE This naive fix does not support values like ``bar`` in
|
||||
# ``--gst-foo bar``. Use equals to pass values, like ``--gst-foo=bar``.
|
||||
|
||||
def is_gst_arg(argument):
|
||||
return argument.startswith('--gst') or argument == '--help-gst'
|
||||
|
||||
gstreamer_args = [arg for arg in sys.argv[1:] if is_gst_arg(arg)]
|
||||
mopidy_args = [arg for arg in sys.argv[1:] if not is_gst_arg(arg)]
|
||||
sys.argv[1:] = gstreamer_args
|
||||
|
||||
|
||||
# Add ../ to the path so we can run Mopidy from a Git checkout without
|
||||
# installing it on the system.
|
||||
sys.path.insert(
|
||||
0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../')))
|
||||
|
||||
|
||||
import pygst
|
||||
pygst.require('0.10')
|
||||
import gst
|
||||
@ -13,12 +37,14 @@ import gst
|
||||
from mopidy import settings
|
||||
from mopidy.frontends.mpd import translator as mpd_translator
|
||||
from mopidy.models import Track, Artist, Album
|
||||
from mopidy.utils import log, path
|
||||
from mopidy.utils import log, path, versioning
|
||||
|
||||
|
||||
def main():
|
||||
options = parse_options()
|
||||
|
||||
log.setup_root_logger()
|
||||
log.setup_console_logging(2)
|
||||
log.setup_console_logging(options.verbosity_level)
|
||||
|
||||
tracks = []
|
||||
|
||||
@ -28,7 +54,8 @@ def main():
|
||||
logging.debug('Added %s', track.uri)
|
||||
|
||||
def debug(uri, error, debug):
|
||||
logging.error('Failed %s: %s - %s', uri, error, debug)
|
||||
logging.warning('Failed %s: %s', uri, error)
|
||||
logging.debug('Debug info for %s: %s', uri, debug)
|
||||
|
||||
logging.info('Scanning %s', settings.LOCAL_MUSIC_PATH)
|
||||
scanner = Scanner(settings.LOCAL_MUSIC_PATH, store, debug)
|
||||
@ -46,6 +73,20 @@ def main():
|
||||
print ('%s: %s' % row).encode('utf-8')
|
||||
|
||||
|
||||
def parse_options():
|
||||
parser = optparse.OptionParser(
|
||||
version='Mopidy %s' % versioning.get_version())
|
||||
parser.add_option(
|
||||
'-q', '--quiet',
|
||||
action='store_const', const=0, dest='verbosity_level',
|
||||
help='less output (warning level)')
|
||||
parser.add_option(
|
||||
'-v', '--verbose',
|
||||
action='count', default=1, dest='verbosity_level',
|
||||
help='more output (debug level)')
|
||||
return parser.parse_args(args=mopidy_args)[0]
|
||||
|
||||
|
||||
def translator(data):
|
||||
albumartist_kwargs = {}
|
||||
album_kwargs = {}
|
||||
@ -192,3 +233,7 @@ class Scanner(object):
|
||||
def stop(self):
|
||||
self.pipe.set_state(gst.STATE_NULL)
|
||||
self.loop.quit()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user