Exemplo n.º 1
0
import sys
import ConfigParser

from postfix_log_parser import PostfixLogParser
from postfixmts.model.postfixlog import *
from postfixmts.model import init_model

from sqlalchemy.orm import sessionmaker
from sqlalchemy import create_engine


config = ConfigParser.ConfigParser( { 'here' : os.getcwd() } )
config.read(os.path.join(os.getcwd(), 'development.ini'))
sqlalchemy_url = config.get('app:main', 'sqlalchemy.url')
engine = create_engine(sqlalchemy_url, echo = False)
init_model(engine)


class PostfixLog2DB(PostfixLogParser):
    def __init__(self):
        pass

    def process_log_prefix(self, log_line, obj):
        obj.date = log_line[self.DATE]
        obj.time = log_line[self.TIME]
        obj.hostname = log_line[self.HOSTNAME]
        if self.QUEUE_ID in log_line:
            obj.queue_id = log_line[self.QUEUE_ID]

    def process_client_line(self, log_line):
        client_line = ClientLine()
Exemplo n.º 2
0
def setup_db():
    """Method used to build a database"""
    engine = config['pylons.app_globals'].sa_engine 
    model.init_model(engine)
    model.metadata.create_all(engine)