in oap-server/server-fetcher-plugin/cilium-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/fetcher/cilium/handler/CiliumFlowListener.java [332:368]
protected boolean shouldIgnoreFlow(CiliumNode node, Flow flow) {
// must have source and destination
if (!flow.hasSource() || !flow.hasDestination()) {
return true;
}
// if the source and destination or not set, then ignore this flow
if (shouldIgnoreEndpoint(flow.getSource()) || shouldIgnoreEndpoint(flow.getDestination())) {
return true;
}
// only acknowledge the flows is forwarded or dropped
switch (flow.getVerdict()) {
case FORWARDED:
case DROPPED:
break;
default:
return true;
}
// traffic direction must be set
if (flow.getTrafficDirection() == TrafficDirection.TRAFFIC_DIRECTION_UNKNOWN) {
return true;
}
// flow type is only support for L3, L4 and L7
switch (flow.getType()) {
case L3_L4:
case L7: break;
default: return true;
}
// ignore the client traffic if we convert the client as server traffic
if (this.convertClientAsServerTraffic && DetectPoint.SERVER.equals(parseDetectPoint(flow))) {
return true;
}
// ignore the flow when the source and dest endpoint should exclude both
if (excludeRules.shouldExclude(flow.getSource()) && excludeRules.shouldExclude(flow.getDestination())) {
return true;
}
return false;
}