first stategies, import script for BTC histry
This commit is contained in:
@ -1,5 +1,29 @@
|
||||
import logging
|
||||
import sys
|
||||
from datetime import datetime
|
||||
|
||||
class LocalTimeFormatter(logging.Formatter):
|
||||
"""
|
||||
Custom formatter to display time with milliseconds and a (UTC+HH) offset.
|
||||
"""
|
||||
def formatTime(self, record, datefmt=None):
|
||||
# Convert log record's creation time to a local, timezone-aware datetime object
|
||||
dt = datetime.fromtimestamp(record.created).astimezone()
|
||||
|
||||
# Format the main time part
|
||||
time_part = dt.strftime('%Y-%m-%d %H:%M:%S')
|
||||
|
||||
# Get the UTC offset and format it as (UTC+HH)
|
||||
offset = dt.utcoffset()
|
||||
offset_str = ""
|
||||
if offset is not None:
|
||||
offset_hours = int(offset.total_seconds() / 3600)
|
||||
sign = '+' if offset_hours >= 0 else ''
|
||||
offset_str = f" (UTC{sign}{offset_hours})"
|
||||
|
||||
# --- FIX: Cast record.msecs from float to int before formatting ---
|
||||
# Combine time, milliseconds, and the offset string
|
||||
return f"{time_part},{int(record.msecs):03d}{offset_str}"
|
||||
|
||||
def setup_logging(log_level: str, process_name: str):
|
||||
"""
|
||||
@ -29,10 +53,9 @@ def setup_logging(log_level: str, process_name: str):
|
||||
|
||||
handler = logging.StreamHandler(sys.stdout)
|
||||
|
||||
# --- FIX: Added a date format that includes the timezone name (%Z) ---
|
||||
formatter = logging.Formatter(
|
||||
f'%(asctime)s - {process_name} - %(levelname)s - %(message)s',
|
||||
datefmt='%Y-%m-%d %H:%M:%S %Z'
|
||||
# This will produce timestamps like: 2025-10-13 14:30:00,123 (UTC+2)
|
||||
formatter = LocalTimeFormatter(
|
||||
f'%(asctime)s - {process_name} - %(levelname)s - %(message)s'
|
||||
)
|
||||
handler.setFormatter(formatter)
|
||||
logger.addHandler(handler)
|
||||
|
||||
Reference in New Issue
Block a user