Add timestamps to logs and stop regen'ing licenses every time

This commit is contained in:
Jack Kingsman
2026-03-10 13:08:26 -07:00
parent 9a99d3f17e
commit eaee66f836
3 changed files with 64 additions and 9 deletions

View File

@@ -1,4 +1,5 @@
import logging import logging
import logging.config
from typing import Literal from typing import Literal
from pydantic import model_validator from pydantic import model_validator
@@ -84,10 +85,64 @@ class _RepeatSquelch(logging.Filter):
def setup_logging() -> None: def setup_logging() -> None:
"""Configure logging for the application.""" """Configure logging for the application."""
logging.basicConfig( logging.config.dictConfig(
level=settings.log_level, {
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", "version": 1,
datefmt="%Y-%m-%d %H:%M:%S", "disable_existing_loggers": False,
"formatters": {
"default": {
"format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s",
"datefmt": "%Y-%m-%d %H:%M:%S",
},
"uvicorn_default": {
"()": "uvicorn.logging.DefaultFormatter",
"fmt": "%(asctime)s - %(levelprefix)s %(message)s",
"datefmt": "%Y-%m-%d %H:%M:%S",
"use_colors": None,
},
"uvicorn_access": {
"()": "uvicorn.logging.AccessFormatter",
"fmt": '%(asctime)s - %(levelprefix)s %(client_addr)s - "%(request_line)s" %(status_code)s',
"datefmt": "%Y-%m-%d %H:%M:%S",
"use_colors": None,
},
},
"handlers": {
"default": {
"class": "logging.StreamHandler",
"formatter": "default",
},
"uvicorn_default": {
"class": "logging.StreamHandler",
"formatter": "uvicorn_default",
},
"uvicorn_access": {
"class": "logging.StreamHandler",
"formatter": "uvicorn_access",
},
},
"root": {
"level": settings.log_level,
"handlers": ["default"],
},
"loggers": {
"uvicorn": {
"level": settings.log_level,
"handlers": ["uvicorn_default"],
"propagate": False,
},
"uvicorn.error": {
"level": settings.log_level,
"handlers": ["uvicorn_default"],
"propagate": False,
},
"uvicorn.access": {
"level": settings.log_level,
"handlers": ["uvicorn_access"],
"propagate": False,
},
},
}
) )
# Squelch repeated messages from the meshcore library (e.g. rapid-fire # Squelch repeated messages from the meshcore library (e.g. rapid-fire
# "Serial Connection started" when the port is contended). # "Serial Connection started" when the port is contended).

View File

@@ -35,11 +35,6 @@ npm run lint:fix
npm run format npm run format
echo -e "${GREEN}[frontend lint]${NC} Passed!" echo -e "${GREEN}[frontend lint]${NC} Passed!"
echo -e "${BLUE}[licenses]${NC} Regenerating LICENSES.md (always run)..."
cd "$SCRIPT_DIR"
bash scripts/collect_licenses.sh LICENSES.md
echo -e "${GREEN}[licenses]${NC} LICENSES.md updated"
echo -e "${GREEN}=== Phase 1 complete ===${NC}" echo -e "${GREEN}=== Phase 1 complete ===${NC}"
echo echo

View File

@@ -58,6 +58,11 @@ echo -e "${GREEN}Frontend build complete!${NC}"
cd "$SCRIPT_DIR" cd "$SCRIPT_DIR"
echo echo
echo -e "${YELLOW}Regenerating LICENSES.md...${NC}"
bash scripts/collect_licenses.sh LICENSES.md
echo -e "${GREEN}LICENSES.md updated!${NC}"
echo
# Prompt for version # Prompt for version
echo -e "${YELLOW}Current versions:${NC}" echo -e "${YELLOW}Current versions:${NC}"
echo -n " pyproject.toml: " echo -n " pyproject.toml: "