Skip to content

Commit 7aa2b8d

Browse files
committed
oops
1 parent 77dcc3e commit 7aa2b8d

File tree

2 files changed

+68
-2
lines changed

2 files changed

+68
-2
lines changed
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opentelemetry.sdk.logs.internal;
7+
8+
import io.opentelemetry.api.logs.Severity;
9+
10+
/**
11+
* Builder for {@link LoggerConfig}.
12+
*
13+
* <p>This class is internal and experimental. Its APIs are unstable and can change at any time. Its
14+
* APIs (or a version of them) may be promoted to the public stable API in the future, but no
15+
* guarantees are made.
16+
*/
17+
public final class LoggerConfigBuilder {
18+
private boolean enabled = true;
19+
private Severity minimumSeverity = Severity.UNDEFINED_SEVERITY_NUMBER;
20+
private boolean traceBased = false;
21+
22+
LoggerConfigBuilder() {}
23+
24+
/**
25+
* Sets whether the logger is enabled.
26+
*
27+
* @param enabled whether the logger is enabled
28+
* @return this builder
29+
*/
30+
public LoggerConfigBuilder setEnabled(boolean enabled) {
31+
this.enabled = enabled;
32+
return this;
33+
}
34+
35+
/**
36+
* Sets the minimum severity level for log records to be processed.
37+
*
38+
* <p>Log records with a severity number less than this value will be dropped. Log records without
39+
* a specified severity are not affected by this setting.
40+
*
41+
* @param minimumSeverity minimum severity level for log records to be processed
42+
* @return this builder
43+
*/
44+
public LoggerConfigBuilder setMinimumSeverity(Severity minimumSeverity) {
45+
this.minimumSeverity = minimumSeverity;
46+
return this;
47+
}
48+
49+
/**
50+
* Sets whether to only process log records from traces when the trace is sampled.
51+
*
52+
* <p>When enabled, log records from unsampled traces will be dropped. Log records that are not
53+
* associated with a trace context are unaffected.
54+
*
55+
* @param traceBased whether to only process log records from traces when the trace is sampled
56+
* @return this builder
57+
*/
58+
public LoggerConfigBuilder setTraceBased(boolean traceBased) {
59+
this.traceBased = traceBased;
60+
return this;
61+
}
62+
63+
/** Builds and returns a {@link LoggerConfig}. */
64+
public LoggerConfig build() {
65+
return LoggerConfig.create(enabled, minimumSeverity, traceBased);
66+
}
67+
}

sdk/logs/src/test/java/io/opentelemetry/sdk/logs/SdkLoggerTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -173,8 +173,7 @@ void isEnabled_MinimumSeverity() {
173173
SdkLoggerProvider.builder().addLogRecordProcessor(logRecordProcessor).build();
174174
SdkLogger logger = (SdkLogger) loggerProvider.get("test");
175175

176-
LoggerConfig config =
177-
LoggerConfig.builder().setMinimumSeverity(Severity.WARN).build();
176+
LoggerConfig config = LoggerConfig.builder().setMinimumSeverity(Severity.WARN).build();
178177
logger.updateLoggerConfig(config);
179178

180179
// Below minimum severity - should be disabled

0 commit comments

Comments
 (0)