Skip to content

Commit a08253d

Browse files
committed
log level configuration tests
1 parent 048864c commit a08253d

File tree

2 files changed

+103
-0
lines changed

2 files changed

+103
-0
lines changed
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
package datadog.trace.agent
2+
3+
import datadog.trace.agent.test.IntegrationTestUtils
4+
5+
import jvmbootstraptest.LogLevelChecker
6+
import spock.lang.Specification
7+
8+
9+
class LogLevelTest extends Specification {
10+
11+
12+
/* Priority: datadog.slf4j.simpleLogger.defaultLogLevel > dd.trace.debug > DD_TRACE_DEBUG
13+
1: INFO LOGS
14+
0: DEBUG Logs
15+
*/
16+
17+
def "dd.trace.debug=false"() {
18+
expect:
19+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
20+
, ["-Ddd.trace.debug=false","-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
21+
, "" as String[]
22+
, [:]
23+
, true) == 1
24+
}
25+
def "SLF4J DEBUG && dd.trace.debug=false"() {
26+
expect:
27+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
28+
, ["-Ddd.trace.debug=false","-Ddatadog.slf4j.simpleLogger.defaultLogLevel=debug","-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
29+
, "" as String[]
30+
, [:]
31+
, true) == 0
32+
}
33+
def "dd.trace.debug=false && DD_TRACE_DEBUG=true"() {
34+
expect:
35+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
36+
, ["-Ddd.trace.debug=false","-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
37+
, "" as String[]
38+
, ["DD_TRACE_DEBUG": "true"]
39+
, true) == 1
40+
}
41+
42+
def "dd.trace.debug=true"() {
43+
expect:
44+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
45+
, ["-Ddd.trace.debug=true","-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
46+
, "" as String[]
47+
, [:]
48+
, true) == 0
49+
}
50+
51+
52+
def "DD_TRACE_DEBUG=true"() {
53+
expect:
54+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
55+
, ["-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
56+
, "" as String[]
57+
, ["DD_TRACE_DEBUG": "true"]
58+
, true) == 0
59+
}
60+
61+
def "dd.trace.debug=true && DD_TRACE_DEBUG=false"() {
62+
expect:
63+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
64+
, ["-Ddd.trace.debug=true","-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
65+
, "" as String[]
66+
, ["DD_TRACE_DEBUG": "false"]
67+
, true) == 0
68+
}
69+
70+
71+
72+
def " datadog.slf4j.simpleLogger.defaultLogLevel=debug && DD_TRACE_DEBUG=false"() {
73+
expect:
74+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
75+
, ["-Ddatadog.slf4j.simpleLogger.defaultLogLevel=debug","-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
76+
, "" as String[]
77+
, ["DD_TRACE_DEBUG": "false"]
78+
, true) == 0
79+
}
80+
81+
def " datadog.slf4j.simpleLogger.defaultLogLevel=info && DD_TRACE_DEBUG=true"() {
82+
expect:
83+
IntegrationTestUtils.runOnSeparateJvm(LogLevelChecker.getName()
84+
, ["-Ddatadog.slf4j.simpleLogger.defaultLogLevel=info","-Ddd.jmxfetch.enabled=false","-Ddd.trace.enabled=false"] as String[]
85+
, "" as String[]
86+
, ["DD_TRACE_DEBUG": "true"]
87+
, true) == 1
88+
}
89+
90+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package jvmbootstraptest;
2+
3+
public class LogLevelChecker {
4+
// returns an exception if logs are not in DEBUG
5+
public static void main(final String[] args) throws ClassNotFoundException {
6+
7+
String str = System.getProperty("datadog.slf4j.simpleLogger.defaultLogLevel");
8+
9+
if ((str == null) || (str != null && !str.equalsIgnoreCase("debug"))) {
10+
throw new RuntimeException("debug mode not set");
11+
}
12+
}
13+
}

0 commit comments

Comments
 (0)