|
17 | 17 | import static org.apache.commons.lang3.reflect.FieldUtils.writeStaticField;
|
18 | 18 | import static org.assertj.core.api.Assertions.assertThat;
|
19 | 19 | import static org.assertj.core.api.Assertions.contentOf;
|
20 |
| -import static org.mockito.Mockito.mockStatic; |
21 | 20 | import static org.mockito.Mockito.when;
|
22 | 21 | import static org.mockito.MockitoAnnotations.openMocks;
|
23 |
| -import static software.amazon.lambda.powertools.common.internal.SystemWrapper.getenv; |
24 | 22 |
|
25 | 23 | import com.amazonaws.services.lambda.runtime.Context;
|
26 | 24 | import java.io.File;
|
|
34 | 32 | import org.junit.jupiter.api.Order;
|
35 | 33 | import org.junit.jupiter.api.Test;
|
36 | 34 | import org.mockito.Mock;
|
37 |
| -import org.mockito.MockedStatic; |
38 | 35 | import org.slf4j.MDC;
|
39 | 36 | import software.amazon.lambda.powertools.common.internal.LambdaHandlerProcessor;
|
40 |
| -import software.amazon.lambda.powertools.common.internal.SystemWrapper; |
41 | 37 | import software.amazon.lambda.powertools.logging.internal.LambdaLoggingAspect;
|
42 | 38 | import software.amazon.lambda.powertools.logging.internal.handler.PowertoolsLogEnabled;
|
43 | 39 |
|
@@ -71,41 +67,25 @@ void cleanUp() throws IOException{
|
71 | 67 |
|
72 | 68 | @Test
|
73 | 69 | void shouldLogInJsonFormat() throws IllegalAccessException {
|
74 |
| - try (MockedStatic<SystemWrapper> mocked = mockStatic(SystemWrapper.class)) { |
75 |
| - mocked.when(() -> getenv("_X_AMZN_TRACE_ID")) |
76 |
| - .thenReturn("Root=1-63441c4a-abcdef012345678912345678"); |
77 |
| - mocked.when(() -> getenv("POWERTOOLS_SERVICE_NAME")) |
78 |
| - .thenReturn("testLog4j"); |
| 70 | + writeStaticField(LambdaLoggingAspect.class, "SAMPLING_RATE", "0.000000001", true); |
79 | 71 |
|
80 |
| - writeStaticField(LambdaLoggingAspect.class, "SAMPLING_RATE", "0.000000001", true); |
| 72 | + PowertoolsLogEnabled handler = new PowertoolsLogEnabled(); |
| 73 | + handler.handleRequest("Input", context); |
81 | 74 |
|
82 |
| - PowertoolsLogEnabled handler = new PowertoolsLogEnabled(); |
83 |
| - handler.handleRequest("Input", context); |
84 |
| - |
85 |
| - File logFile = new File("target/logfile.json"); |
86 |
| - assertThat(contentOf(logFile)).contains( |
87 |
| - "{\"level\":\"DEBUG\",\"message\":\"Test debug event\",\"cold_start\":true,\"function_arn\":\"arn:aws:lambda:eu-west-1:012345678910:function:testFunction:1\",\"function_memory_size\":1024,\"function_name\":\"testFunction\",\"function_request_id\":\"RequestId\",\"function_version\":\"1\",\"sampling_rate\":1.0E-9,\"service\":\"testLog4j\",\"timestamp\":") |
88 |
| - .contains("\"xray_trace_id\":\"1-63441c4a-abcdef012345678912345678\",\"myKey\":\"myValue\"}\n"); |
89 |
| - } |
| 75 | + File logFile = new File("target/logfile.json"); |
| 76 | + assertThat(contentOf(logFile)).contains( |
| 77 | + "{\"level\":\"DEBUG\",\"message\":\"Test debug event\",\"cold_start\":true,\"function_arn\":\"arn:aws:lambda:eu-west-1:012345678910:function:testFunction:1\",\"function_memory_size\":1024,\"function_name\":\"testFunction\",\"function_request_id\":\"RequestId\",\"function_version\":\"1\",\"sampling_rate\":1.0E-9,\"service\":\"testLog4j\",\"timestamp\":") |
| 78 | + .contains("\"xray_trace_id\":\"1-63441c4a-abcdef012345678912345678\",\"myKey\":\"myValue\"}\n"); |
90 | 79 | }
|
91 | 80 |
|
92 | 81 | @Test
|
93 | 82 | void shouldLogInEcsFormat() {
|
94 |
| - try (MockedStatic<SystemWrapper> mocked = mockStatic(SystemWrapper.class)) { |
95 |
| - mocked.when(() -> getenv("_X_AMZN_TRACE_ID")) |
96 |
| - .thenReturn("Root=1-63441c4a-abcdef012345678912345678"); |
97 |
| - mocked.when(() -> getenv("AWS_REGION")) |
98 |
| - .thenReturn("eu-central-1"); |
99 |
| - mocked.when(() -> getenv("POWERTOOLS_SERVICE_NAME")) |
100 |
| - .thenReturn("testLog4j"); |
| 83 | + PowertoolsLogEnabled handler = new PowertoolsLogEnabled(); |
| 84 | + handler.handleRequest("Input", context); |
101 | 85 |
|
102 |
| - PowertoolsLogEnabled handler = new PowertoolsLogEnabled(); |
103 |
| - handler.handleRequest("Input", context); |
104 |
| - |
105 |
| - File logFile = new File("target/ecslogfile.json"); |
106 |
| - assertThat(contentOf(logFile)).contains( |
107 |
| - "\"ecs.version\":\"1.2.0\",\"log.level\":\"DEBUG\",\"message\":\"Test debug event\",\"service.name\":\"testLog4j\",\"service.version\":\"1\",\"log.logger\":\"software.amazon.lambda.powertools.logging.internal.handler.PowertoolsLogEnabled\",\"process.thread.name\":\"main\",\"cloud.provider\":\"aws\",\"cloud.service.name\":\"lambda\",\"cloud.region\":\"eu-central-1\",\"cloud.account.id\":\"012345678910\",\"faas.id\":\"arn:aws:lambda:eu-west-1:012345678910:function:testFunction:1\",\"faas.name\":\"testFunction\",\"faas.version\":\"1\",\"faas.memory\":1024,\"faas.execution\":\"RequestId\",\"faas.coldstart\":true,\"trace.id\":\"1-63441c4a-abcdef012345678912345678\",\"myKey\":\"myValue\"}\n"); |
108 |
| - } |
| 86 | + File logFile = new File("target/ecslogfile.json"); |
| 87 | + assertThat(contentOf(logFile)).contains( |
| 88 | + "\"ecs.version\":\"1.2.0\",\"log.level\":\"DEBUG\",\"message\":\"Test debug event\",\"service.name\":\"testLog4j\",\"service.version\":\"1\",\"log.logger\":\"software.amazon.lambda.powertools.logging.internal.handler.PowertoolsLogEnabled\",\"process.thread.name\":\"main\",\"cloud.provider\":\"aws\",\"cloud.service.name\":\"lambda\",\"cloud.region\":\"eu-central-1\",\"cloud.account.id\":\"012345678910\",\"faas.id\":\"arn:aws:lambda:eu-west-1:012345678910:function:testFunction:1\",\"faas.name\":\"testFunction\",\"faas.version\":\"1\",\"faas.memory\":1024,\"faas.execution\":\"RequestId\",\"faas.coldstart\":true,\"trace.id\":\"1-63441c4a-abcdef012345678912345678\",\"myKey\":\"myValue\"}\n"); |
109 | 89 | }
|
110 | 90 |
|
111 | 91 | private void setupContext() {
|
|
0 commit comments