@@ -746,16 +746,7 @@ def resample(self, timestamp: datetime) -> Sample[Quantity]:
746746 # resort to some C (or similar) implementation.
747747 relevant_samples = list (itertools .islice (self ._buffer , min_index , max_index ))
748748 if not relevant_samples :
749- _logger .warning ("No relevant samples found for: %s" , self ._name )
750- _logger .debug ("Requested: %s - %s" , minimum_relevant_timestamp , timestamp )
751- if self ._buffer :
752- _logger .debug (
753- "Buffer: %s - %s" ,
754- self ._buffer [0 ].timestamp ,
755- self ._buffer [- 1 ].timestamp ,
756- )
757- else :
758- _logger .debug ("Buffer is empty" )
749+ self ._log_no_relevant_samples (minimum_relevant_timestamp , timestamp )
759750
760751 value = (
761752 conf .resampling_function (relevant_samples , conf , props )
@@ -764,6 +755,37 @@ def resample(self, timestamp: datetime) -> Sample[Quantity]:
764755 )
765756 return Sample (timestamp , None if value is None else Quantity (value ))
766757
758+ def _log_no_relevant_samples (
759+ self , minimum_relevant_timestamp : datetime , timestamp : datetime
760+ ) -> None :
761+ """Log that no relevant samples were found.
762+
763+ Args:
764+ minimum_relevant_timestamp: The minimum timestamp for which relevant samples
765+ timestamp: The timestamp for which no relevant samples were found.
766+ """
767+ if self ._buffer :
768+ buffer_label = f"Buffer({ len (self ._buffer )} ):"
769+ buffer_info = f"{ self ._buffer [0 ].timestamp } - { self ._buffer [- 1 ].timestamp } "
770+ else :
771+ buffer_label = "Buffer:"
772+ buffer_info = "Buffer is empty"
773+
774+ # Calculate the maximum label width for alignment
775+ label_width = max (len ("Requested:" ), len (buffer_label ))
776+
777+ _logger .warning (
778+ ("No relevant samples found for: %s\n %-*s %s - %s\n %-*s %s" ),
779+ self ._name ,
780+ label_width ,
781+ "Requested:" ,
782+ minimum_relevant_timestamp ,
783+ timestamp ,
784+ label_width ,
785+ buffer_label ,
786+ buffer_info ,
787+ )
788+
767789
768790class _StreamingHelper :
769791 """Resample data coming from a source, sending the results to a sink."""
0 commit comments