88
88
try :
89
89
import os
90
90
import warnings
91
+ from . import logging # skipcq: PLY-C0414
91
92
from . import socket # skipcq: PYL-C0414
92
93
import ipaddress
93
94
except Exception as err :
98
99
raise baton from err
99
100
100
101
102
+ module_logger = logging .getLogger (__module__ )
103
+ module_logger .debug (f"loading { __module__ } " )
104
+ module_logger .debug (f"Initializing { __package__ } environment." )
105
+
106
+
101
107
def validate_buffer_size (size : int ) -> bool :
102
108
"""
103
109
Validate if the buffer size is a positive integer.
@@ -334,26 +340,31 @@ def load_buffer_size() -> int:
334
340
"""
335
341
# Import globals that we'll potentially update
336
342
from multicast import _MCAST_DEFAULT_BUFFER_SIZE
343
+ module_logger .debug ("Looking for MULTICAST_BUFFER_SIZE in environment." )
337
344
try :
338
345
buffer_size = int (os .getenv (
339
346
"MULTICAST_BUFFER_SIZE" ,
340
347
_MCAST_DEFAULT_BUFFER_SIZE # skipcq: PYL-W1508
341
348
))
349
+ module_logger .debug ("Done." )
342
350
except ValueError :
343
351
warnings .warn (
344
352
f"Invalid MULTICAST_BUFFER_SIZE value, using default { _MCAST_DEFAULT_BUFFER_SIZE } " ,
345
353
stacklevel = 2
346
354
)
347
355
buffer_size = _MCAST_DEFAULT_BUFFER_SIZE # skipcq: PYL-W1508
348
- # Validate and potentially update port
356
+ # Validate and potentially update buffer-size
357
+ module_logger .debug ("Validating MULTICAST_BUFFER_SIZE." )
349
358
if validate_buffer_size (buffer_size ):
350
359
globals ()["_MCAST_DEFAULT_BUFFER_SIZE" ] = buffer_size
360
+ module_logger .debug ("Valid." )
351
361
else :
352
362
warnings .warn (
353
363
f"Invalid MULTICAST_BUFFER_SIZE { buffer_size } , using default { _MCAST_DEFAULT_BUFFER_SIZE } " ,
354
364
stacklevel = 2
355
365
)
356
366
buffer_size = _MCAST_DEFAULT_BUFFER_SIZE
367
+ module_logger .debug (f"Loaded { buffer_size } as internal multicast buffer size." )
357
368
return buffer_size
358
369
359
370
@@ -435,22 +446,27 @@ def load_port() -> int:
435
446
"""
436
447
# Import globals that we'll potentially update
437
448
from multicast import _MCAST_DEFAULT_PORT
449
+ module_logger .debug ("Looking for MULTICAST_PORT in environment." )
438
450
try :
439
451
port = int (os .getenv ("MULTICAST_PORT" , _MCAST_DEFAULT_PORT ))
452
+ module_logger .debug ("Done." )
440
453
except ValueError :
441
454
warnings .warn (
442
455
f"Invalid MULTICAST_PORT value, using default { _MCAST_DEFAULT_PORT } " , stacklevel = 2
443
456
)
444
457
port = _MCAST_DEFAULT_PORT
445
458
# Validate and potentially update port
459
+ module_logger .debug ("Validating MULTICAST_PORT." )
446
460
if validate_port (port ):
447
461
globals ()["_MCAST_DEFAULT_PORT" ] = port
462
+ module_logger .debug ("Valid." )
448
463
else :
449
464
warnings .warn (
450
465
f"Port { port } is outside valid range (49152-65535), using default { _MCAST_DEFAULT_PORT } " ,
451
466
stacklevel = 2
452
467
)
453
468
port = _MCAST_DEFAULT_PORT
469
+ module_logger .debug (f"Loaded { port } as default multicast port." )
454
470
return port
455
471
456
472
@@ -555,15 +571,19 @@ def load_group() -> ipaddress.IPv4Address:
555
571
"""
556
572
# Import globals that we'll potentially update
557
573
from multicast import _MCAST_DEFAULT_GROUP
574
+ module_logger .debug ("Looking for any MULTICAST_GROUP in environment." )
558
575
group = os .getenv ("MULTICAST_GROUP" , _MCAST_DEFAULT_GROUP )
559
576
# Validate and potentially update group
577
+ module_logger .debug ("Validating either MULTICAST_GROUP or default." )
560
578
if validate_multicast_address (group ):
561
579
globals ()["_MCAST_DEFAULT_GROUP" ] = group
580
+ module_logger .debug ("Valid." )
562
581
else :
563
582
warnings .warn (
564
583
f"Invalid multicast group { group } , using default { _MCAST_DEFAULT_GROUP } " , stacklevel = 2
565
584
)
566
585
group = _MCAST_DEFAULT_GROUP
586
+ module_logger .debug (f"Loaded { group } as default multicast group." )
567
587
return ipaddress .IPv4Address (group )
568
588
569
589
@@ -638,24 +658,31 @@ def load_TTL() -> int:
638
658
"""
639
659
# Import globals that we'll potentially update
640
660
from multicast import _MCAST_DEFAULT_TTL
661
+ module_logger .debug ("Looking for MULTICAST_TTL in environment." )
641
662
try :
642
663
ttl = int (os .getenv ("MULTICAST_TTL" , _MCAST_DEFAULT_TTL ))
664
+ module_logger .debug ("Done." )
643
665
except ValueError :
644
666
warnings .warn (
645
667
f"Invalid MULTICAST_TTL value, using default { _MCAST_DEFAULT_TTL } " , stacklevel = 2
646
668
)
647
669
ttl = _MCAST_DEFAULT_TTL
648
670
# Validate and potentially update TTL
671
+ module_logger .debug ("Validating MULTICAST_TTL." )
649
672
if validate_ttl (ttl ):
650
673
globals ()["_MCAST_DEFAULT_TTL" ] = ttl
674
+ module_logger .debug ("Valid." )
651
675
else :
652
676
warnings .warn (
653
677
f"TTL { ttl } is outside valid range (1-126), using default { _MCAST_DEFAULT_TTL } " ,
654
678
stacklevel = 2
655
679
)
656
680
ttl = _MCAST_DEFAULT_TTL
681
+ module_logger .debug (f"Loaded { ttl } as default multicast time-to-live." )
657
682
# Update socket default timeout
683
+ module_logger .debug ("Update socket default timeout." )
658
684
socket .setdefaulttimeout (int (ttl ))
685
+ module_logger .debug ("Updated." )
659
686
return ttl
660
687
661
688
@@ -857,13 +884,19 @@ def load_config() -> dict:
857
884
858
885
"""
859
886
# Load values from environment with defaults
887
+ module_logger .info ("Loading multicast overrides from environment." )
860
888
port = load_port ()
861
889
group = load_group ()
862
890
ttl = load_TTL ()
863
891
buffer_size = load_buffer_size ()
892
+ module_logger .debug ("Looking for MULTICAST_GROUPS in environment." )
864
893
groups_str = os .getenv ("MULTICAST_GROUPS" , "" )
894
+ module_logger .debug ("Done." )
895
+ module_logger .debug ("Looking for MULTICAST_BIND_ADDR in environment." )
865
896
bind_addr = os .getenv ("MULTICAST_BIND_ADDR" , str (group )) # skipcq: PYL-W1508
897
+ module_logger .debug ("Done." )
866
898
# Process and validate groups
899
+ module_logger .debug ("Processing and validating groups." )
867
900
groups = set ()
868
901
if groups_str :
869
902
for addr in groups_str .split ():
@@ -875,9 +908,14 @@ def load_config() -> dict:
875
908
)
876
909
# Always include the primary group
877
910
groups .add (str (group ))
911
+ module_logger .debug ("Processed groups." )
878
912
# Include bind_addr if it's a valid multicast address
913
+ module_logger .debug ("Processing and validating bind-address." )
879
914
if validate_multicast_address (bind_addr ):
915
+ module_logger .debug ("Adding multicast bind-address to groups." )
880
916
groups .add (str (bind_addr ))
917
+ module_logger .debug ("Processed bind-address." )
918
+ module_logger .debug ("Overrides and defaults are ready to configure." )
881
919
return {
882
920
"port" : port ,
883
921
"group" : str (group ),
0 commit comments