Beispiel #1
0
def _parse_log(uri, repo, parser, reader, config, db):
    """Parse the log with the given parser, outputting to a database.

    Args:
      uri: The URI of the log to parse (this is already set in the parser)
      repo: The repositoryhandler repository object to query
      parser: The parser object that should be started
      reader: The log reader
      config: The Config object that specifies the current config
      db: The database to add the data to
    """
    # Start the parsing process
    printout("Parsing log for %s (%s)", (uri, repo.get_type()))

    def new_line(line, user_data):
        parser, writer = user_data

        parser.feed(line)
        writer and writer.add_line(line)

    writer = None
    if config.save_logfile is not None:
        writer = LogWriter(config.save_logfile)

    parser.set_content_handler(DBProxyContentHandler(db))
    reader.start(new_line, (parser, writer))
    parser.end()
    writer and writer.close()
Beispiel #2
0
def _parse_log(uri, repo, parser, reader, config, db):
    """Parse the log with the given parser, outputting to a database.

    Args:
      uri: The URI of the log to parse (this is already set in the parser)
      repo: The repositoryhandler repository object to query
      parser: The parser object that should be started
      reader: The log reader
      config: The Config object that specifies the current config
      db: The database to add the data to
    """
    # Start the parsing process
    printout("Parsing log for %s (%s)", (uri, repo.get_type()))

    def new_line(line, user_data):
        parser, writer = user_data

        parser.feed(line)
        writer and writer.add_line(line)

    writer = None
    if config.save_logfile is not None:
        writer = LogWriter(config.save_logfile)

    parser.set_content_handler(DBProxyContentHandler(db))
    reader.start(new_line, (parser, writer))
    parser.end()
    writer and writer.close()
Beispiel #3
0
        rep = DBRepository(None, uri, name, repo.get_type())
        cursor.execute(statement(DBRepository.__insert__, db.place_holder),
                       (rep.id, rep.uri, rep.name, rep.type))
        cursor.close()
        cnn.commit()

    cnn.close()

    if not config.no_parse:
        # Start the parsing process
        printout("Parsing log for %s (%s)", (path or uri, repo.get_type()))

        def new_line(line, user_data):
            parser, writer = user_data

            parser.feed(line)
            writer and writer.add_line(line)

        writer = None
        if config.save_logfile is not None:
            writer = LogWriter(config.save_logfile)

        parser.set_content_handler(DBProxyContentHandler(db))
        reader.start(new_line, (parser, writer))
        parser.end()
        writer and writer.close()

    # Run extensions
    printout("Executing extensions")
    emg.run_extensions(repo, path or uri, db)
Beispiel #4
0
        rep = DBRepository (None, uri, name, repo.get_type ())
        cursor.execute (statement (DBRepository.__insert__, db.place_holder), (rep.id, rep.uri, rep.name, rep.type))
        cursor.close ()
        cnn.commit ()

    cnn.close ()

    if not config.no_parse:
        # Start the parsing process
        printout ("Parsing log for %s (%s)", (path or uri, repo.get_type ()))
        
        def new_line (line, user_data):
            parser, writer = user_data
        
            parser.feed (line)
            writer and writer.add_line (line)
        
        writer = None
        if config.save_logfile is not None:
            writer = LogWriter (config.save_logfile)
        
        parser.set_content_handler (DBProxyContentHandler (db))
        reader.start (new_line, (parser, writer))
        parser.end ()
        writer and writer.close ()

    # Run extensions
    printout ("Executing extensions")
    emg.run_extensions (repo, path or uri, db)