Skip to content

Commit 3648b65

Browse files
Refactoring of AppSec Events Reporting system (#7154)
* Refactoring of AppSec events * Fixed tests * Minor fix
1 parent 5ba28c1 commit 3648b65

9 files changed

Lines changed: 47 additions & 525 deletions

File tree

dd-java-agent/appsec/src/main/java/com/datadog/appsec/powerwaf/PowerWAFModule.java

Lines changed: 2 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@
1414
import com.datadog.appsec.event.data.KnownAddresses;
1515
import com.datadog.appsec.gateway.AppSecRequestContext;
1616
import com.datadog.appsec.report.AppSecEvent;
17-
import com.datadog.appsec.report.Parameter;
18-
import com.datadog.appsec.report.Rule;
19-
import com.datadog.appsec.report.RuleMatch;
2017
import com.datadog.appsec.util.StandardizedLogging;
2118
import com.squareup.moshi.JsonAdapter;
2219
import com.squareup.moshi.Moshi;
@@ -45,7 +42,6 @@
4542
import java.lang.reflect.Method;
4643
import java.lang.reflect.Proxy;
4744
import java.lang.reflect.UndeclaredThrowableException;
48-
import java.util.ArrayList;
4945
import java.util.Collection;
5046
import java.util.Collections;
5147
import java.util.HashMap;
@@ -557,45 +553,15 @@ private AppSecEvent buildEvent(PowerWAFResultData wafResult) {
557553
return null;
558554
}
559555

560-
List<RuleMatch> ruleMatchList = new ArrayList<>();
561-
for (PowerWAFResultData.RuleMatch rule_match : wafResult.rule_matches) {
562-
563-
List<Parameter> parameterList = new ArrayList<>();
564-
565-
for (PowerWAFResultData.Parameter parameter : rule_match.parameters) {
566-
parameterList.add(
567-
new Parameter.Builder()
568-
.withAddress(parameter.address)
569-
.withKeyPath(parameter.key_path)
570-
.withValue(parameter.value)
571-
.withHighlight(parameter.highlight)
572-
.build());
573-
}
574-
575-
RuleMatch ruleMatch =
576-
new RuleMatch.Builder()
577-
.withOperator(rule_match.operator)
578-
.withOperatorValue(rule_match.operator_value)
579-
.withParameters(parameterList)
580-
.build();
581-
582-
ruleMatchList.add(ruleMatch);
583-
}
584-
585556
Long spanId = null;
586557
AgentSpan agentSpan = AgentTracer.get().activeSpan();
587558
if (agentSpan != null) {
588559
spanId = agentSpan.getSpanId();
589560
}
590561

591562
return new AppSecEvent.Builder()
592-
.withRule(
593-
new Rule.Builder()
594-
.withId(wafResult.rule.id)
595-
.withName(wafResult.rule.name)
596-
.withTags(wafResult.rule.tags)
597-
.build())
598-
.withRuleMatches(ruleMatchList)
563+
.withRule(wafResult.rule)
564+
.withRuleMatches(wafResult.rule_matches)
599565
.withSpanId(spanId)
600566
.build();
601567
}

dd-java-agent/appsec/src/main/java/com/datadog/appsec/powerwaf/PowerWAFResultData.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public static class RuleMatch {
1414
}
1515

1616
public static class Rule {
17-
String id;
17+
public String id; // expose for log message
1818
String name;
1919
Map<String, String> tags;
2020
}

dd-java-agent/appsec/src/main/java/com/datadog/appsec/report/AppSecEvent.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package com.datadog.appsec.report;
22

3+
import static com.datadog.appsec.powerwaf.PowerWAFResultData.Rule;
4+
import static com.datadog.appsec.powerwaf.PowerWAFResultData.RuleMatch;
5+
36
import java.util.ArrayList;
47
import java.util.List;
58
import java.util.Objects;

dd-java-agent/appsec/src/main/java/com/datadog/appsec/report/Parameter.java

Lines changed: 0 additions & 158 deletions
This file was deleted.

dd-java-agent/appsec/src/main/java/com/datadog/appsec/report/Rule.java

Lines changed: 0 additions & 135 deletions
This file was deleted.

0 commit comments

Comments
 (0)