@@ -763,7 +763,7 @@ def emit(
763763 )
764764 if is_less_than_min_severity (record , self ._min_severity_level ):
765765 return
766- if should_drop_logs_for_trace_based (record , self ._trace_based ):
766+ if should_drop_logs_for_unsampled_traces (record , self ._trace_based ):
767767 return
768768
769769 log_data = LogData (record , self ._instrumentation_scope )
@@ -952,6 +952,17 @@ def std_to_otel(levelno: int) -> SeverityNumber:
952952def is_less_than_min_severity (
953953 record : LogRecord , min_severity : SeverityNumber
954954) -> bool :
955+ """Checks if the log record's severity number is less than the minimum severity level.
956+
957+ Args:
958+ record: The log record to be processed.
959+ min_severity: The minimum severity level.
960+
961+ Returns:
962+ True if the log record's severity number is less than the minimum
963+ severity level, False otherwise. Log records with an unspecified severity (i.e. `0`)
964+ are not affected by this parameter and therefore bypass minimum severity filtering.
965+ """
955966 if record .severity_number is not None :
956967 if (
957968 min_severity is not None
@@ -962,10 +973,25 @@ def is_less_than_min_severity(
962973 return False
963974
964975
965- def should_drop_logs_for_trace_based (
966- record : LogRecord , trace_state_enabled : bool
976+ def should_drop_logs_for_unsampled_traces (
977+ record : LogRecord , trace_based_flag : bool
967978) -> bool :
968- if trace_state_enabled :
979+ """Determines whether the logger should drop log records associated with unsampled traces.
980+
981+ If `trace_based` is `true`, log records associated with unsampled traces are dropped by the `Logger`.
982+ A log record is considered associated with an unsampled trace if it has a valid `SpanId` and its
983+ `TraceFlags` indicate that the trace is unsampled. A log record that isn't associated with a trace
984+ context is not affected by this parameter and therefore bypasses trace-based filtering.
985+
986+ Args:
987+ record: The log record to be processed.
988+ trace_based_flag: A boolean flag indicating whether trace-based filtering is enabled. If not explicitly set,
989+ the `trace_based` parameter is set to `false`
990+
991+ Returns:
992+ True if the log record should be dropped due to being associated with an unsampled trace.
993+ """
994+ if trace_based_flag :
969995 if record .context is not None :
970996 span = get_current_span (record .context )
971997 span_context = span .get_span_context ()
0 commit comments