kopia lustrzana https://github.com/mate-dev/meshtastic-matrix-relay
Add optional timestamp support to logger
rodzic
da6e0ea827
commit
c4ec798de3
|
@ -77,6 +77,8 @@ meshtastic:
|
||||||
|
|
||||||
logging:
|
logging:
|
||||||
level: "info"
|
level: "info"
|
||||||
|
show_timestamps: true
|
||||||
|
timestamp_format: '[%m/%d/%y]-%H:%M:%S'
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
21
main.py
21
main.py
|
@ -16,17 +16,32 @@ from nio import AsyncClient, AsyncClientConfig, MatrixRoom, RoomMessageText, Roo
|
||||||
from pubsub import pub
|
from pubsub import pub
|
||||||
from yaml.loader import SafeLoader
|
from yaml.loader import SafeLoader
|
||||||
from typing import List, Union
|
from typing import List, Union
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
bot_start_time = int(time.time() * 1000) # Timestamp when the bot starts, used to filter out old messages
|
bot_start_time = int(time.time() * 1000) # Timestamp when the bot starts, used to filter out old messages
|
||||||
|
|
||||||
logging.basicConfig()
|
|
||||||
logger = logging.getLogger(name="meshtastic.matrix.relay")
|
|
||||||
|
|
||||||
# Load configuration
|
# Load configuration
|
||||||
with open("config.yaml", "r") as f:
|
with open("config.yaml", "r") as f:
|
||||||
relay_config = yaml.load(f, Loader=SafeLoader)
|
relay_config = yaml.load(f, Loader=SafeLoader)
|
||||||
|
|
||||||
|
# Configure logging
|
||||||
|
logger = logging.getLogger(name="meshtastic.matrix.relay")
|
||||||
|
log_level = getattr(logging, relay_config["logging"]["level"].upper())
|
||||||
|
show_timestamps = relay_config["logging"]["show_timestamps"]
|
||||||
|
timestamp_format = relay_config["logging"]["timestamp_format"]
|
||||||
|
|
||||||
|
if show_timestamps:
|
||||||
|
log_format = f"%(asctime)s %(levelname)s:%(name)s:%(message)s"
|
||||||
|
else:
|
||||||
|
log_format = "%(levelname)s:%(name)s:%(message)s"
|
||||||
|
|
||||||
logger.setLevel(getattr(logging, relay_config["logging"]["level"].upper()))
|
logger.setLevel(getattr(logging, relay_config["logging"]["level"].upper()))
|
||||||
|
logger.propagate = False # Add this line to prevent double logging
|
||||||
|
|
||||||
|
formatter = logging.Formatter(log_format, datefmt=timestamp_format)
|
||||||
|
handler = logging.StreamHandler()
|
||||||
|
handler.setFormatter(formatter)
|
||||||
|
logger.addHandler(handler)
|
||||||
|
|
||||||
# Initialize SQLite database
|
# Initialize SQLite database
|
||||||
def initialize_database():
|
def initialize_database():
|
||||||
|
|
|
@ -17,4 +17,6 @@ meshtastic:
|
||||||
broadcast_enabled: true
|
broadcast_enabled: true
|
||||||
|
|
||||||
logging:
|
logging:
|
||||||
level: "info"
|
level: "debug"
|
||||||
|
show_timestamps: true
|
||||||
|
timestamp_format: '[%m/%d/%y]-%H:%M:%S'
|
Ładowanie…
Reference in New Issue