public SampleFamily propertyMissing(String sampleName) {
            ExpressionParsingContext.get().ifPresent(ctx -> {
                if (!ctx.samples.contains(sampleName)) {
                    ctx.samples.add(sampleName);
                }
            });
            Map<String, SampleFamily> sampleFamilies = PROPERTY_REPOSITORY.get();
            if (sampleFamilies == null) {
                return SampleFamily.EMPTY;
            }
            if (sampleFamilies.containsKey(sampleName)) {
                SampleFamily sampleFamily = sampleFamilies.get(sampleName);
                sampleFamily.context.setMetricName(this.metricName);
                return sampleFamily;
            }
            if (ExpressionParsingContext.get().isEmpty()) {
                log.warn("{} referred by \"{}\" doesn't exist in {}", sampleName, literal, sampleFamilies.keySet());
            }
            return SampleFamily.EMPTY;
        }
Run the expression with a data map.

@param sampleFamilies a data map includes all of candidates to be analysis.
@return The result of execution.
oap-server/analyzer/meter-analyzer/src/main/java/org/apache/skywalking/oap/meter/analyzer/dsl/Expression.java