protected Result analyzeWaypoint(Result previousResult, StreamAccessLogsMessage.Identifier identifier, final HTTPAccessLogEntry entry) {
        if (!entry.hasCommonProperties()) {
            return previousResult;
        }
        if (previousResult.hasUpstreamMetrics() && previousResult.hasDownstreamMetrics()) {
            return previousResult;
        }

        final String waypointIP = getWaypointIP(identifier);
        final AccessLogCommon properties = entry.getCommonProperties();
        final Address downstreamRemoteAddress = properties.hasDownstreamDirectRemoteAddress() &&
            Addresses.isValid(properties.getDownstreamDirectRemoteAddress()) ?
                properties.getDownstreamDirectRemoteAddress() : properties.getDownstreamRemoteAddress();
        final Address upstreamRemoteAddress = properties.getUpstreamRemoteAddress();
        if (!isValid(downstreamRemoteAddress) || !isValid(upstreamRemoteAddress)) {
            return previousResult;
        }

        return buildUpstreamDownstreamMetrics(previousResult, entry,
            Addresses.getAddressIP(downstreamRemoteAddress),
            waypointIP,
            Addresses.getAddressIP(upstreamRemoteAddress), null);
    }
Analysis log based on ingress and mesh scenarios.
oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/als/k8s/K8sALSServiceMeshHTTPAnalysis.java