Skip to content

Commit 4236220

Browse files
committed
move emf exporter files, removed need to set x-aws-metric-namespace header, and consolidated unit tests
1 parent 746e989 commit 4236220

File tree

12 files changed

+19
-46
lines changed

12 files changed

+19
-46
lines changed

awsagentprovider/src/main/java/software/amazon/opentelemetry/javaagent/providers/AwsApplicationSignalsCustomizerProvider.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -541,8 +541,7 @@ MetricExporter customizeMetricExporter(
541541

542542
if (awsRegion.isPresent()) {
543543
if (headers.containsKey(AWS_OTLP_LOGS_GROUP_HEADER)
544-
&& headers.containsKey(AWS_OTLP_LOGS_STREAM_HEADER)
545-
&& headers.containsKey(AWS_EMF_METRICS_NAMESPACE)) {
544+
&& headers.containsKey(AWS_OTLP_LOGS_STREAM_HEADER)) {
546545
String namespace = headers.get(AWS_EMF_METRICS_NAMESPACE);
547546
String logGroup = headers.get(AWS_OTLP_LOGS_GROUP_HEADER);
548547
String logStream = headers.get(AWS_OTLP_LOGS_STREAM_HEADER);

awsagentprovider/src/main/java/software/amazon/opentelemetry/javaagent/providers/exporter/aws/metrics/AwsCloudWatchEmfExporter.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@
1818
import io.opentelemetry.sdk.common.CompletableResultCode;
1919
import java.util.logging.Logger;
2020
import software.amazon.awssdk.services.cloudwatchlogs.CloudWatchLogsClient;
21-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.BaseEmfExporter;
22-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter.CloudWatchLogsClientEmitter;
23-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter.LogEventEmitter;
21+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.BaseEmfExporter;
22+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter.CloudWatchLogsClientEmitter;
23+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter.LogEventEmitter;
2424

2525
/**
2626
* EMF metrics exporter for sending data directly to CloudWatch Logs.

awsagentprovider/src/main/java/software/amazon/opentelemetry/javaagent/providers/exporter/aws/metrics/ConsoleEmfExporter.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@
1919
import java.io.PrintStream;
2020
import java.util.logging.Level;
2121
import java.util.logging.Logger;
22-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.BaseEmfExporter;
23-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter.ConsoleEmitter;
24-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter.LogEventEmitter;
22+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.BaseEmfExporter;
23+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter.ConsoleEmitter;
24+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter.LogEventEmitter;
2525

2626
/** EMF metrics exporter for printing data to Standard Out. */
2727
public class ConsoleEmfExporter extends BaseEmfExporter<PrintStream> {
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* permissions and limitations under the License.
1414
*/
1515

16-
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.common;
16+
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common;
1717

1818
import com.fasterxml.jackson.databind.ObjectMapper;
1919
import io.opentelemetry.api.common.Attributes;
@@ -38,7 +38,7 @@
3838
import java.util.Map;
3939
import java.util.TreeMap;
4040
import java.util.logging.Logger;
41-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter.LogEventEmitter;
41+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter.LogEventEmitter;
4242

4343
/**
4444
* Base class for EMF metric exporters that converts OpenTelemetry metrics to CloudWatch EMF format.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* permissions and limitations under the License.
1414
*/
1515

16-
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.common;
16+
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common;
1717

1818
import io.opentelemetry.api.common.Attributes;
1919
import io.opentelemetry.sdk.metrics.data.DoublePointData;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* permissions and limitations under the License.
1414
*/
1515

16-
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter;
16+
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter;
1717

1818
import java.time.Duration;
1919
import java.util.*;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* permissions and limitations under the License.
1414
*/
1515

16-
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter;
16+
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter;
1717

1818
import java.io.PrintStream;
1919
import java.util.Map;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* permissions and limitations under the License.
1414
*/
1515

16-
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter;
16+
package software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter;
1717

1818
import java.util.Map;
1919

awsagentprovider/src/test/java/software/amazon/opentelemetry/javaagent/providers/AwsApplicationSignalsCustomizerProviderTest.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -601,21 +601,11 @@ static Stream<Arguments> invalidEmfConfigProvider() {
601601
AWS_REGION,
602602
"us-east-1");
603603

604-
Map<String, String> missingNamespace =
605-
Map.of(
606-
OTEL_METRICS_EXPORTER,
607-
"awsemf",
608-
OTEL_EXPORTER_OTLP_LOGS_HEADERS,
609-
"x-aws-log-group=test-group,x-aws-log-stream=test-stream",
610-
AWS_REGION,
611-
"us-east-1");
612-
613604
args.add(wrongExporter);
614605
args.add(missingHeaders);
615606
args.add(missingRegion);
616607
args.add(missingLogGroup);
617608
args.add(missingLogStream);
618-
args.add(missingNamespace);
619609

620610
return args.stream().map(Arguments::of);
621611
}

awsagentprovider/src/test/java/software/amazon/opentelemetry/javaagent/providers/exporter/aws/metrics/AwsCloudWatchEmfExporterTest.java

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@
3737
import software.amazon.awssdk.services.cloudwatchlogs.model.PutLogEventsRequest;
3838
import software.amazon.awssdk.services.cloudwatchlogs.model.ResourceAlreadyExistsException;
3939
import software.amazon.awssdk.services.cloudwatchlogs.model.ResourceNotFoundException;
40-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter.CloudWatchLogsClientEmitter;
41-
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.common.emitter.LogEventEmitter;
40+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter.CloudWatchLogsClientEmitter;
41+
import software.amazon.opentelemetry.javaagent.providers.exporter.aws.metrics.common.emitter.LogEventEmitter;
4242

4343
public class AwsCloudWatchEmfExporterTest extends BaseEmfExporterTest<CloudWatchLogsClient> {
4444
private static final String LOG_GROUP_NAME = "test-log-group";
@@ -72,23 +72,6 @@ protected MetricExporter createExporter() {
7272
return new AwsCloudWatchEmfExporter(NAMESPACE, this.mockEmitter);
7373
}
7474

75-
@Override
76-
protected Optional<Map<String, Object>> validateEmfStructure(
77-
Map<String, Object> logEvent, String metricName) {
78-
79-
Optional<Map<String, Object>> emfLogOpt = super.validateEmfStructure(logEvent, metricName);
80-
81-
if (emfLogOpt.isPresent()) {
82-
Map<String, Object> emfLog = emfLogOpt.get();
83-
Map<String, Object> aws = (Map<String, Object>) emfLog.get("_aws");
84-
List<Map<String, Object>> cloudWatchMetrics =
85-
(List<Map<String, Object>>) aws.get("CloudWatchMetrics");
86-
assertEquals(NAMESPACE, cloudWatchMetrics.get(0).get("Namespace"));
87-
}
88-
89-
return emfLogOpt;
90-
}
91-
9275
@Test
9376
void testShutdown() {
9477
AwsCloudWatchEmfExporter spyExporter = spy(this.mockExporter);

0 commit comments

Comments
 (0)