| changeset 272 | fe2efe3600ea |
| parent 263 | 6671e9a4c9c5 |
| child 289 | a5eff8f2b81d |
| 271:4e4e2fda4e66 | 272:fe2efe3600ea |
|---|---|
36 columns_user = [u'follow_request_sent', u'profile_use_background_image', u'id', u'verified', u'profile_sidebar_fill_color', u'profile_text_color', u'followers_count', u'protected', u'location', u'profile_background_color', u'id_str', u'utc_offset', u'statuses_count', u'description', u'friends_count', u'profile_link_color', u'profile_image_url', u'notifications', u'show_all_inline_media', u'geo_enabled', u'profile_background_image_url', u'name', u'lang', u'following', u'profile_background_tile', u'favourites_count', u'screen_name', u'url', u'created_at', u'contributors_enabled', u'time_zone', u'profile_sidebar_border_color', u'is_translator', u'listed_count'] |
36 columns_user = [u'follow_request_sent', u'profile_use_background_image', u'id', u'verified', u'profile_sidebar_fill_color', u'profile_text_color', u'followers_count', u'protected', u'location', u'profile_background_color', u'id_str', u'utc_offset', u'statuses_count', u'description', u'friends_count', u'profile_link_color', u'profile_image_url', u'notifications', u'show_all_inline_media', u'geo_enabled', u'profile_background_image_url', u'name', u'lang', u'following', u'profile_background_tile', u'favourites_count', u'screen_name', u'url', u'created_at', u'contributors_enabled', u'time_zone', u'profile_sidebar_border_color', u'is_translator', u'listed_count'] |
37 #just put it in a sqlite3 tqble |
37 #just put it in a sqlite3 tqble |
38 |
38 |
39 |
39 |
40 def set_logging(options): |
40 def set_logging(options): |
41 utils.set_logging(options, logging.getLogger('iri.tweet')) |
41 loggers = [] |
42 utils.set_logging(options, logging.getLogger('multiprocessing')) |
42 |
43 loggers.append(utils.set_logging(options, logging.getLogger('iri.tweet'))) |
|
44 loggers.append(utils.set_logging(options, logging.getLogger('multiprocessing'))) |
|
43 if options.debug >= 2: |
45 if options.debug >= 2: |
44 utils.set_logging(options, logging.getLogger('sqlalchemy.engine')) |
46 loggers.append(utils.set_logging(options, logging.getLogger('sqlalchemy.engine'))) |
45 #utils.set_logging(options, logging.getLogger('sqlalchemy.dialects')) |
47 #utils.set_logging(options, logging.getLogger('sqlalchemy.dialects')) |
46 #utils.set_logging(options, logging.getLogger('sqlalchemy.pool')) |
48 #utils.set_logging(options, logging.getLogger('sqlalchemy.pool')) |
47 #utils.set_logging(options, logging.getLogger('sqlalchemy.orm')) |
49 #utils.set_logging(options, logging.getLogger('sqlalchemy.orm')) |
50 return loggers |
|
48 |
51 |
49 def set_logging_process(options, queue): |
52 def set_logging_process(options, queue): |
50 qlogger = utils.set_logging(options, logging.getLogger('iri.tweet.p'), queue) |
53 qlogger = utils.set_logging(options, logging.getLogger('iri.tweet.p'), queue) |
51 qlogger.propagate = 0 |
54 qlogger.propagate = 0 |
52 return qlogger |
55 return qlogger |
329 help="Twitter password", metavar="PASSWORD", default=None) |
332 help="Twitter password", metavar="PASSWORD", default=None) |
330 parser.add_option("-T", "--track", dest="track", |
333 parser.add_option("-T", "--track", dest="track", |
331 help="Twitter track", metavar="TRACK") |
334 help="Twitter track", metavar="TRACK") |
332 parser.add_option("-n", "--new", dest="new", action="store_true", |
335 parser.add_option("-n", "--new", dest="new", action="store_true", |
333 help="new database", default=False) |
336 help="new database", default=False) |
337 parser.add_option("-D", "--daemon", dest="daemon", action="store_true", |
|
338 help="launch daemon", default=False) |
|
334 parser.add_option("-r", "--reconnects", dest="reconnects", |
339 parser.add_option("-r", "--reconnects", dest="reconnects", |
335 help="Reconnects", metavar="RECONNECTS", default=10, type='int') |
340 help="Reconnects", metavar="RECONNECTS", default=10, type='int') |
336 parser.add_option("-t", dest="token_filename", metavar="TOKEN_FILENAME", default=".oauth_token", |
341 parser.add_option("-t", dest="token_filename", metavar="TOKEN_FILENAME", default=".oauth_token", |
337 help="Token file name") |
342 help="Token file name") |
338 parser.add_option("-d", "--duration", dest="duration", |
343 parser.add_option("-d", "--duration", dest="duration", |
476 pengine.dispose() |
481 pengine.dispose() |
477 |
482 |
478 return stop_args |
483 return stop_args |
479 |
484 |
480 |
485 |
481 if __name__ == '__main__': |
486 def main(options, args): |
482 |
487 |
483 (options, args) = get_options() |
488 global conn_str |
484 |
|
485 set_logging(options) |
|
486 |
|
487 utils.get_logger().debug("OPTIONS : " + repr(options)) |
|
488 |
489 |
489 conn_str = options.conn_str.strip() |
490 conn_str = options.conn_str.strip() |
490 if not re.match("^\w+://.+", conn_str): |
491 if not re.match("^\w+://.+", conn_str): |
491 conn_str = 'sqlite:///' + options.conn_str |
492 conn_str = 'sqlite:///' + options.conn_str |
492 |
493 |
529 raise |
530 raise |
530 finally: |
531 finally: |
531 add_process_event(type="shutdown", args=stop_args, session_maker=Session) |
532 add_process_event(type="shutdown", args=stop_args, session_maker=Session) |
532 |
533 |
533 utils.get_logger().debug("Done. Exiting.") |
534 utils.get_logger().debug("Done. Exiting.") |
534 |
535 |
536 |
|
537 |
|
538 if __name__ == '__main__': |
|
539 |
|
540 (options, args) = get_options() |
|
541 |
|
542 loggers = set_logging(options) |
|
543 |
|
544 utils.get_logger().debug("OPTIONS : " + repr(options)) |
|
545 |
|
546 if options.daemon: |
|
547 import daemon |
|
548 import lockfile |
|
549 |
|
550 hdlr_preserve = [] |
|
551 for logger in loggers: |
|
552 hdlr_preserve.extend([h.stream for h in logger.handlers]) |
|
553 |
|
554 context = daemon.DaemonContext(working_directory=os.getcwd(), files_preserve=hdlr_preserve) |
|
555 with context: |
|
556 main(options, args) |
|
557 else: |
|
558 main(options, args) |
|
559 |