use of com.microsoft.applicationinsights.agent.internal.configuration.Configuration.NameConfig in project ApplicationInsights-Java by microsoft.
the class ExporterWithLogProcessorTest method simpleRenameLogWithMissingKeysTest.
@Test
void simpleRenameLogWithMissingKeysTest() {
MockExporter mockExporter = new MockExporter();
ProcessorConfig config = new ProcessorConfig();
config.type = ProcessorType.LOG;
config.id = "SimpleRenameLogWithMissingKeys";
config.body = new NameConfig();
config.body.fromAttributes = Arrays.asList("db.svc", "operation", "id");
config.body.separator = "::";
SpanExporter exampleExporter = new ExporterWithLogProcessor(config, mockExporter);
Span span = tracer.spanBuilder("svcA").setAttribute("one", "1").setAttribute("two", 2L).setAttribute("db.svc", "location").setAttribute("operation", "get").setAttribute("applicationinsights.internal.log", true).startSpan();
SpanData spanData = ((ReadableSpan) span).toSpanData();
List<SpanData> spans = new ArrayList<>();
spans.add(spanData);
exampleExporter.export(spans);
// verify that resulting logs are filtered in the way we want
List<SpanData> result = mockExporter.getSpans();
SpanData resultSpan = result.get(0);
assertThat(resultSpan.getName()).isEqualTo("svcA");
}
use of com.microsoft.applicationinsights.agent.internal.configuration.Configuration.NameConfig in project ApplicationInsights-Java by microsoft.
the class ExporterWithLogProcessorTest method invalidRegexInRulesTest.
@Test
void invalidRegexInRulesTest() {
MockExporter mockExporter = new MockExporter();
ProcessorConfig config = new ProcessorConfig();
config.type = ProcessorType.LOG;
config.id = "InvalidRegexInRules";
config.body = new NameConfig();
ToAttributeConfig toAttributeConfig = new ToAttributeConfig();
toAttributeConfig.rules = new ArrayList<>();
toAttributeConfig.rules.add("***");
config.body.toAttributes = toAttributeConfig;
assertThatThrownBy(() -> new ExporterWithLogProcessor(config, mockExporter)).isInstanceOf(FriendlyException.class);
}
use of com.microsoft.applicationinsights.agent.internal.configuration.Configuration.NameConfig in project ApplicationInsights-Java by microsoft.
the class ExporterWithSpanProcessorTest method simpleRenameSpanTestWithLogProcessor.
@Test
void simpleRenameSpanTestWithLogProcessor() {
MockExporter mockExporter = new MockExporter();
ProcessorConfig config = new ProcessorConfig();
config.type = ProcessorType.SPAN;
config.id = "SimpleRenameSpan";
config.name = new NameConfig();
config.name.fromAttributes = Arrays.asList("db.svc", "operation", "id");
SpanExporter exampleExporter = new ExporterWithSpanProcessor(config, mockExporter);
Span span = tracer.spanBuilder("svcA").setAttribute("one", "1").setAttribute("two", 2L).setAttribute("db.svc", "location").setAttribute("operation", "get").setAttribute("id", "1234").setAttribute("applicationinsights.internal.log", true).startSpan();
SpanData spanData = ((ReadableSpan) span).toSpanData();
List<SpanData> spans = new ArrayList<>();
spans.add(spanData);
exampleExporter.export(spans);
// verify that resulting spans are not modified
List<SpanData> result = mockExporter.getSpans();
SpanData resultSpan = result.get(0);
assertThat(resultSpan.getName()).isEqualTo("svcA");
}
use of com.microsoft.applicationinsights.agent.internal.configuration.Configuration.NameConfig in project ApplicationInsights-Java by microsoft.
the class ExporterWithSpanProcessorTest method simpleRenameSpanTest.
@Test
void simpleRenameSpanTest() {
MockExporter mockExporter = new MockExporter();
ProcessorConfig config = new ProcessorConfig();
config.type = ProcessorType.SPAN;
config.id = "SimpleRenameSpan";
config.name = new NameConfig();
config.name.fromAttributes = Arrays.asList("db.svc", "operation", "id");
SpanExporter exampleExporter = new ExporterWithSpanProcessor(config, mockExporter);
Span span = tracer.spanBuilder("svcA").setAttribute("one", "1").setAttribute("two", 2L).setAttribute("db.svc", "location").setAttribute("operation", "get").setAttribute("id", "1234").startSpan();
SpanData spanData = ((ReadableSpan) span).toSpanData();
List<SpanData> spans = new ArrayList<>();
spans.add(spanData);
exampleExporter.export(spans);
// verify that resulting spans are filtered in the way we want
List<SpanData> result = mockExporter.getSpans();
SpanData resultSpan = result.get(0);
assertThat(resultSpan.getName()).isEqualTo("locationget1234");
}
use of com.microsoft.applicationinsights.agent.internal.configuration.Configuration.NameConfig in project ApplicationInsights-Java by microsoft.
the class ExporterWithSpanProcessorTest method invalidRegexInRulesTest.
@Test
void invalidRegexInRulesTest() {
MockExporter mockExporter = new MockExporter();
ProcessorConfig config = new ProcessorConfig();
config.type = ProcessorType.SPAN;
config.id = "InvalidRegexInRules";
config.name = new NameConfig();
ToAttributeConfig toAttributeConfig = new ToAttributeConfig();
toAttributeConfig.rules = new ArrayList<>();
toAttributeConfig.rules.add("***");
config.name.toAttributes = toAttributeConfig;
assertThatThrownBy(() -> new ExporterWithSpanProcessor(config, mockExporter)).isInstanceOf(FriendlyException.class);
}
Aggregations