File tree Expand file tree Collapse file tree 2 files changed +53
-0
lines changed Expand file tree Collapse file tree 2 files changed +53
-0
lines changed Original file line number Diff line number Diff line change @@ -212,4 +212,31 @@ mod tests {
212212 & AnyValue :: String ( "value-from-bag" . into( ) )
213213 ) ) ;
214214 }
215+
216+ #[ test]
217+ fn log_suppression ( ) {
218+ // Arrange
219+ let exporter: InMemoryLogExporter = InMemoryLogExporter :: default ( ) ;
220+ let logger_provider = SdkLoggerProvider :: builder ( )
221+ . with_simple_exporter ( exporter. clone ( ) )
222+ . build ( ) ;
223+
224+ // Act
225+ let logger = logger_provider. logger ( "test-logger" ) ;
226+ let mut log_record = logger. create_log_record ( ) ;
227+ log_record. set_severity_number ( Severity :: Error ) ;
228+
229+ {
230+ let _suppressed_context = Context :: enter_telemetry_suppressed_scope ( ) ;
231+ logger. emit ( log_record) ;
232+ }
233+
234+ // Assert
235+ let exported_logs = exporter. get_emitted_logs ( ) . expect ( "this should not fail." ) ;
236+ assert_eq ! (
237+ exported_logs. len( ) ,
238+ 0 ,
239+ "There should be a no logs as log emission is done inside a suppressed context"
240+ ) ;
241+ }
215242}
Original file line number Diff line number Diff line change @@ -533,4 +533,30 @@ mod tests {
533533 let tracer2 = tracer_provider. tracer_with_scope ( tracer_scope) ;
534534 tracer_name_retained_helper ( tracer2, tracer_provider, exporter) . await ;
535535 }
536+
537+ #[ test]
538+ fn trace_suppression ( ) {
539+ // Arrange
540+ let exporter = InMemorySpanExporter :: default ( ) ;
541+ let span_processor = SimpleSpanProcessor :: new ( exporter. clone ( ) ) ;
542+ let tracer_provider = SdkTracerProvider :: builder ( )
543+ . with_span_processor ( span_processor)
544+ . build ( ) ;
545+
546+ // Act
547+ let tracer = tracer_provider. tracer ( "test" ) ;
548+ {
549+ let _suppressed_context = Context :: enter_telemetry_suppressed_scope ( ) ;
550+ let span = tracer. span_builder ( "span_name" ) . start ( & tracer) ;
551+ drop ( span) ;
552+ }
553+
554+ // Assert
555+ let finished_spans = exporter. get_finished_spans ( ) . expect ( "this should not fail" ) ;
556+ assert_eq ! (
557+ finished_spans. len( ) ,
558+ 0 ,
559+ "There should be a no spans as span emission is done inside a suppressed context"
560+ ) ;
561+ }
536562}
You can’t perform that action at this time.
0 commit comments