Add timestamps to log

This commit is contained in:
jaseg 2023-12-26 15:12:12 +01:00
parent 4e865b82dc
commit d8991cbd71

View file

@ -111,12 +111,16 @@ digit_addresses = [
(3, 15), # 31 (3, 15), # 31
] ]
def log(*args):
timestamp = datetime.now().strftime('[%y-%m-%d %H:%M:%S]')
print(timestamp, *args)
def set_display(ser, message, interval, display_width, global_brightness): def set_display(ser, message, interval, display_width, global_brightness):
lines = [ line for line in message.splitlines() if line.strip() ] lines = [ line for line in message.splitlines() if line.strip() ]
for i, line in enumerate(lines): for i, line in enumerate(lines):
line = line.center(display_width)[:display_width] line = line.center(display_width)[:display_width]
line_mapped = [shuffle_segments(seg_map.get(c, seg_map['#'])) for c in line] line_mapped = [shuffle_segments(seg_map.get(c, seg_map['#'])) for c in line]
print(f' [Line {i+1}/{len(lines)}] Sending control data.') log(f' [Line {i+1}/{len(lines)}] Sending control data.')
digit_data = [0x00] * 16 * 4 digit_data = [0x00] * 16 * 4
for (driver, address), data in zip(digit_addresses, line_mapped): for (driver, address), data in zip(digit_addresses, line_mapped):
@ -166,7 +170,7 @@ def cli(database, port, baudrate, message_interval, display_width, global_bright
idle_seconds = int(interval) idle_seconds = int(interval)
idle_index += 1 idle_index += 1
print(f' [Idle {idle_index}/{len(idle_messages)}] {message}') log(f' [Idle {idle_index}/{len(idle_messages)}] {message}')
set_display(ser, message, 0, display_width, global_brightness) set_display(ser, message, 0, display_width, global_brightness)
time.sleep(1) time.sleep(1)
@ -174,7 +178,7 @@ def cli(database, port, baudrate, message_interval, display_width, global_bright
queue_pressure = max(0, min((math.log10(max(1, count-3)) - 0.3) * message_interval*2/3, message_interval*1/3)) queue_pressure = max(0, min((math.log10(max(1, count-3)) - 0.3) * message_interval*2/3, message_interval*1/3))
interval = message_interval - queue_pressure interval = message_interval - queue_pressure
print(f' Waiting interval of {message_interval:.1f} s with queue pressure {queue_pressure:.1f} from n={count} items for a total of {interval:.1f} s') log(f' Waiting interval of {message_interval:.1f} s with queue pressure {queue_pressure:.1f} from n={count} items for a total of {interval:.1f} s')
rowid, message, timestamp, remote_ip, suppress_display = db.execute(''' rowid, message, timestamp, remote_ip, suppress_display = db.execute('''
@ -193,11 +197,11 @@ def cli(database, port, baudrate, message_interval, display_width, global_bright
else: else:
if discard > 0: if discard > 0:
print(f'Discarded {discard} messages.') log(f'Discarded {discard} messages.')
discard = 0 discard = 0
print(f'Queueing message by {remote_ip} received at {timestamp} ({delta//60:.0f}m {delta%60:.0f}s ago):') log(f'Queueing message by {remote_ip} received at {timestamp} ({delta//60:.0f}m {delta%60:.0f}s ago):')
print(' ', repr(message)) log(' ', repr(message))
idle_seconds = 0 idle_seconds = 0
interval = max(5, interval/len(message.splitlines())) interval = max(5, interval/len(message.splitlines()))