File size: 1,137 Bytes
beb52ea
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import logging
from pathlib import Path

class Logger:
    def __init__(self, filename="devika_agent.log"):
        # Set up logging
        self.log_dir = Path("/code/logs")
        self.log_dir.mkdir(exist_ok=True)
        self.log_file = self.log_dir / filename
        
        # Configure logging
        logging.basicConfig(
            level=logging.INFO,
            format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
            handlers=[
                logging.FileHandler(self.log_file),
                logging.StreamHandler()
            ]
        )
        self.logger = logging.getLogger("devika")

    def info(self, message: str):
        self.logger.info(message)

    def error(self, message: str):
        self.logger.error(message)

    def warning(self, message: str):
        self.logger.warning(message)

    def debug(self, message: str):
        self.logger.debug(message)

def route_logger(logger):
    def decorator(f):
        def wrapper(*args, **kwargs):
            logger.info(f"Route called: {f.__name__}")
            return f(*args, **kwargs)
        return wrapper
    return decorator