hyb
2026-01-30 44480e71b27aa9d4cb8441f50c873f1b110e9691
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# -*- coding: utf-8 -*-
"""
@File    : decorator.py
@Time    : 2023/1/16 14:43
@Author  : geekbing
@LastEditTime : -
@LastEditors : -
@Description : 日志
"""
 
import functools
import logging
 
from lunarlink.utils import parser
 
logger = logging.getLogger(__name__)
 
 
def request_log(level):
    def wrapper(func):
        @functools.wraps(func)
        def inner_wrapper(request, *args, **kwargs):
            msg_data = (
                f"before process request data:\n{parser.format_json(request.data)}"
            )
            msg_params = f"before process request params:\n{parser.format_json(request.query_params)}"
 
            if level == "INFO":
                if request.data:
                    logger.info(msg_data)
                if request.query_params:
                    logger.info(msg_params)
            elif level == "DEBUG":
                if request.data:
                    logger.debug(msg_data)
                if request.query_params:
                    logger.debug(msg_params)
            return func(request, *args, **kwargs)
 
        return inner_wrapper
 
    return wrapper