public ConvertStatics convertToMeter(List<ZabbixRequest.AgentData> dataList) {
            if (log.isDebugEnabled()) {
                log.debug("Receive zabbix agent data: {}", dataList);
            }
            StopWatch stopWatch = new StopWatch();
            Collection<SampleFamily> sampleFamilies = null;
            try {
                stopWatch.start();

                // Parse config labels
                Map<String, String> configLabels = parseConfigLabels(dataList);

                // Build metrics
                ImmutableMap<String, SampleFamily> families = dataList.stream()
                    // Correct state
                    .filter(d -> d.getState() == 0 && NumberUtils.isParsable(d.getValue()))
                    // Parse data to list
                    .map(this::parseAgentData)
                    .map(b -> b.build(configLabels))
                    // Combine to sample family
                    .collect(Collectors.groupingBy(Sample::getName))
                    .entrySet().stream().collect(toImmutableMap(
                        Map.Entry::getKey,
                        e -> SampleFamilyBuilder.newBuilder(e.getValue().stream().toArray(Sample[]::new)).build()));

                sampleFamilies = families.values();

                // Each all converters
                metricConverts.forEach(converter -> converter.toMeter(families));
            } finally {
                stopWatch.stop();
            }

            return ConvertStatics.builder()
                .total(sampleFamilies.size())
                // Setting all as success
                .success(sampleFamilies.size())
                .useTime(((double) stopWatch.getTime()) / 1000)
                .build();
        }
The group of instances according to hostPatterns defined in Zabbix rule file
oap-server/server-receiver-plugin/skywalking-zabbix-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zabbix/provider/ZabbixMetrics.java