Elastiflix/python-favorite-otel-manual/main.py [96:143]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
logger = logging.getLogger("app")
logger.setLevel(logging.DEBUG)

# Add an ECS formatter to the Handler
handler = logging.StreamHandler()
handler.setFormatter(ecs_logging.StdlibFormatter())
logger.addHandler(handler)
logging.getLogger("werkzeug").setLevel(logging.ERROR)
logging.getLogger("werkzeug").addHandler(handler)

r = redis.Redis(host=redis_host, port=redis_port, decode_responses=True)


@app.after_request
def after_request(response):
    print(response)
    # timestamp in iso8601
    timestamp = datetime.datetime.utcnow().isoformat()
    logger.info(
        "%s %s %s %s %s %s",
        timestamp,
        request.remote_addr,
        request.method,
        request.scheme,
        request.full_path,
        response.status,
        extra={
            "event.dataset": "favorite.log",
            "http.request.method": request.method,
            "http.request.path": request.full_path,
            "source.ip": request.remote_addr,
            "http.response.status_code": response.status,
        },
    )
    return response


@app.route("/")
def hello():
    logger.info("Main request successfull")
    return "Hello World!"


@app.route("/favorites", methods=["GET"])
def get_favorite_movies():
    # add artificial delay if enabled
    if delay_time > 0:
        time.sleep(max(0, random.gauss(delay_time / 1000, delay_time / 1000 / 10)))
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



Elastiflix/python-favorite/main.py [24:71]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
logger = logging.getLogger("app")
logger.setLevel(logging.DEBUG)

# Add an ECS formatter to the Handler
handler = logging.StreamHandler()
handler.setFormatter(ecs_logging.StdlibFormatter())
logger.addHandler(handler)
logging.getLogger("werkzeug").setLevel(logging.ERROR)
logging.getLogger("werkzeug").addHandler(handler)

r = redis.Redis(host=redis_host, port=redis_port, decode_responses=True)


@app.after_request
def after_request(response):
    print(response)
    # timestamp in iso8601
    timestamp = datetime.datetime.utcnow().isoformat()
    logger.info(
        "%s %s %s %s %s %s",
        timestamp,
        request.remote_addr,
        request.method,
        request.scheme,
        request.full_path,
        response.status,
        extra={
            "event.dataset": "favorite.log",
            "http.request.method": request.method,
            "http.request.path": request.full_path,
            "source.ip": request.remote_addr,
            "http.response.status_code": response.status,
        },
    )
    return response


@app.route("/")
def hello():
    logger.info("Main request successfull")
    return "Hello World!"


@app.route("/favorites", methods=["GET"])
def get_favorite_movies():
    # add artificial delay if enabled
    if delay_time > 0:
        time.sleep(max(0, random.gauss(delay_time / 1000, delay_time / 1000 / 10)))
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



