예제 #1
0
    def __init__(self, config):

        self.config = config

        shared_secret = os.getenv(AUTH_SHARED_SECRET_ENV, 'uggipuggi')
        
        COOKIE_OPTS = {"name": "auth_token",
                       "location": "header",
                       #"max_age": MAX_TOKEN_AGE,
                       "path": "/recipes",
                       "http_only": True}        

        # LoginResource, AuthMiddleware
        self.forgot_password, self.register, self.logout, self.pw_change, self.verify_phone, self.auth_middleware = auth_jwt.get_auth_objects(
            get_user,
            shared_secret, # random secret
            TOKEN_EXPIRATION_SECS,
            VERIFY_PHONE_TOKEN_EXPIRATION_SECS,
            token_opts=COOKIE_OPTS
        )
        
        cors = CORS(
            allow_all_origins=True,
            allow_all_headers=True,            
            allow_all_methods=True,
            allow_credentials_all_origins=True
        )
        
        self.prometheus_metrics = PrometheusMiddleware()
        self.app = falcon.API(middleware=[cors.middleware,
                                          MultipartMiddleware(),
                                          self.auth_middleware,
                                          self.prometheus_metrics])

        if SERVER_RUN_MODE == 'DEBUG':
            self.logger = self._set_logging()
        else:
            self.logger = init_logger() 
        self.logger.info("")
        self.logger.info("===========")
        self.logger.info(time.strftime("%c"))
        self.logger.info("===========")
        self._setup_db()
        self._load_routes()
예제 #2
0
import os
from conf import get_config
from confluent_kafka import Producer

from uggipuggi.helpers.logs_metrics import init_logger

logger = init_logger()
# load config via env
kafka_bootstrap_servers = os.environ.get('KAFKA_BOOTSTRAP_SERVERS',
                                         'kafka:9092')
group_producer = Producer({'bootstrap.servers': kafka_bootstrap_servers})


def group_kafka_collection_post_producer(req, resp, resource):
    # Topic name is 'recipe' and partition is 'user_id'
    # Consumer reads pushes notifications to interested parties and feeds
    parameters = [req.user_id, resp.body["group_id"], resp.status]
    logger.debug("++++++++++++++++++++++")
    logger.debug("GROUP_KAFKA_COLLECTION_POST_PRODUCER: %s" %
                 req.kafka_topic_name)
    logger.debug("----------------------")
    logger.debug(repr(parameters))
    logger.debug("++++++++++++++++++++++")
    group_producer.produce(topic=req.kafka_topic_name,
                           value=repr(parameters),
                           key=req.user_id)  #req.encode('utf-8'))
    group_producer.flush()


def group_kafka_collection_delete_producer(req, resp, resource):
    # Topic name is 'recipe' and partition is 'user_id'
예제 #3
0
 def __init__(self,config):
     self.logger = init_logger()
     self.allowed_origins = config['cors']['allowed_origins'].split(',')
     self.allowed_headers = config['cors']['allowed_headers']
     self.allowed_methods = config['cors']['allowed_methods']