88import static io .opentelemetry .sdk .logs .internal .SdkLoggerProviderUtil .setLoggerConfigurator ;
99import static io .opentelemetry .sdk .testing .assertj .OpenTelemetryAssertions .assertThat ;
1010
11+ import io .opentelemetry .api .logs .Severity ;
1112import io .opentelemetry .exporter .otlp .http .logs .OtlpHttpLogRecordExporter ;
1213import io .opentelemetry .internal .testing .CleanupExtension ;
1314import io .opentelemetry .sdk .autoconfigure .internal .SpiHelper ;
2021import io .opentelemetry .sdk .extension .incubator .fileconfig .internal .model .LogRecordLimitsModel ;
2122import io .opentelemetry .sdk .extension .incubator .fileconfig .internal .model .LogRecordProcessorModel ;
2223import io .opentelemetry .sdk .extension .incubator .fileconfig .internal .model .LoggerProviderModel ;
24+ import io .opentelemetry .sdk .extension .incubator .fileconfig .internal .model .OpenTelemetryConfigurationModel .SeverityNumber ;
2325import io .opentelemetry .sdk .extension .incubator .fileconfig .internal .model .OtlpHttpExporterModel ;
2426import io .opentelemetry .sdk .internal .ScopeConfigurator ;
2527import io .opentelemetry .sdk .internal .ScopeConfiguratorBuilder ;
@@ -92,13 +94,20 @@ private static Stream<Arguments> createArguments() {
9294 .withName ("foo" )
9395 .withConfig (
9496 new ExperimentalLoggerConfigModel ()
95- .withDisabled (false )))))),
97+ .withDisabled (false )
98+ .withTraceBased (true )
99+ .withMinimumSeverity (SeverityNumber .INFO )))))),
96100 setLoggerConfigurator (
97101 SdkLoggerProvider .builder (),
98102 ScopeConfigurator .<LoggerConfig >builder ()
99103 .setDefault (LoggerConfig .disabled ())
100104 .addCondition (
101- ScopeConfiguratorBuilder .nameMatchesGlob ("foo" ), LoggerConfig .enabled ())
105+ ScopeConfiguratorBuilder .nameMatchesGlob ("foo" ),
106+ LoggerConfig .builder ()
107+ .setEnabled (true )
108+ .setTraceBased (true )
109+ .setMinimumSeverity (Severity .INFO )
110+ .build ())
102111 .build ())
103112 .setLogLimits (
104113 () ->
@@ -112,4 +121,38 @@ private static Stream<Arguments> createArguments() {
112121 .build ())
113122 .build ()));
114123 }
124+
125+ @ ParameterizedTest
126+ @ MethodSource ("severityNumberArguments" )
127+ void severityNumber (SeverityNumber model , Severity expectedSeverity ) {
128+ assertThat (LoggerProviderFactory .severityNumberToSeverity (model )).isEqualTo (expectedSeverity );
129+ }
130+
131+ private static Stream <Arguments > severityNumberArguments () {
132+ return Stream .of (
133+ Arguments .of (SeverityNumber .TRACE , Severity .TRACE ),
134+ Arguments .of (SeverityNumber .TRACE_2 , Severity .TRACE2 ),
135+ Arguments .of (SeverityNumber .TRACE_3 , Severity .TRACE3 ),
136+ Arguments .of (SeverityNumber .TRACE_4 , Severity .TRACE4 ),
137+ Arguments .of (SeverityNumber .DEBUG , Severity .DEBUG ),
138+ Arguments .of (SeverityNumber .DEBUG_2 , Severity .DEBUG2 ),
139+ Arguments .of (SeverityNumber .DEBUG_3 , Severity .DEBUG3 ),
140+ Arguments .of (SeverityNumber .DEBUG_4 , Severity .DEBUG4 ),
141+ Arguments .of (SeverityNumber .INFO , Severity .INFO ),
142+ Arguments .of (SeverityNumber .INFO_2 , Severity .INFO2 ),
143+ Arguments .of (SeverityNumber .INFO_3 , Severity .INFO3 ),
144+ Arguments .of (SeverityNumber .INFO_4 , Severity .INFO4 ),
145+ Arguments .of (SeverityNumber .WARN , Severity .WARN ),
146+ Arguments .of (SeverityNumber .WARN_2 , Severity .WARN2 ),
147+ Arguments .of (SeverityNumber .WARN_3 , Severity .WARN3 ),
148+ Arguments .of (SeverityNumber .WARN_4 , Severity .WARN4 ),
149+ Arguments .of (SeverityNumber .ERROR , Severity .ERROR ),
150+ Arguments .of (SeverityNumber .ERROR_2 , Severity .ERROR2 ),
151+ Arguments .of (SeverityNumber .ERROR_3 , Severity .ERROR3 ),
152+ Arguments .of (SeverityNumber .ERROR_4 , Severity .ERROR4 ),
153+ Arguments .of (SeverityNumber .FATAL , Severity .FATAL ),
154+ Arguments .of (SeverityNumber .FATAL_2 , Severity .FATAL2 ),
155+ Arguments .of (SeverityNumber .FATAL_3 , Severity .FATAL3 ),
156+ Arguments .of (SeverityNumber .FATAL_4 , Severity .FATAL4 ));
157+ }
115158}
0 commit comments