Coverage for sonar_backend/utils.py: 91%

11 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-10 03:22 +0000

1import logging 

2 

3from django.utils.timezone import now 

4import json_log_formatter 

5 

6 

7class CustomisedJSONFormatter(json_log_formatter.JSONFormatter): 

8 def json_record(self, message: str, extra: dict, record: logging.LogRecord): 

9 extra["filename"] = record.filename 

10 extra["funcName"] = record.funcName 

11 

12 extra["secs"] = round(record.msecs / 1000, 4) 

13 if record.exc_info: 

14 extra["exc_info"] = self.formatException(record.exc_info) 

15 

16 return { 

17 "app": "sonar-backend", 

18 "message": message, 

19 "timestamp": now().isoformat(), 

20 "level": record.levelname, 

21 "context": extra, 

22 }