Запись объема продаж в метриках данных - PullRequest
0 голосов
/ 21 мая 2019

Я пытаюсь записать сумму продаж моего сайта в datadog.Однако я получаю намного больше, чем фактическое значение.

Я использую клиент java-dogstatsd и spring.Мое приложение работает на 3 хостах.Я записал все метрики (используя метод sendWebOrder), но не повезло.

@EnableConfigurationProperties({DataDogProperties.class})
@Component
public class DDMetrics {
@Autowired
DataDogProperties dataDogProperties;
@Autowired
private NonBlockingStatsDClient statsd;
private Map<TopicPartition,Long> lags = new HashMap<>();
@Bean
private NonBlockingStatsDClient initClient() {
    NonBlockingStatsDClient metricsClient = new NonBlockingStatsDClient(
            dataDogProperties.getServiceName(),
            dataDogProperties.getHostname(),
            dataDogProperties.getPort();
    return metricsClient;
}

public void sendWebOrder(WebOrder webOrder) {
    List<String> tags = new ArrayList<>();
    tags.add("transactionType:" + webOrder.getTransactionType());
    tags.add("dataSourceType:"      + webOrder.getDataSourceType()));
    statsd.count("amount_count", webOrder.getAmount(), String.join(",", tags));
    statsd.recordDistributionValue("amount_dist", webOrder.getAmount(), String.join(",", tags));
    statsd.recordHistogramValue("amount_hist", webOrder.getAmount(), String.join(",", tags));
    statsd.recordGaugeValue("amount_gauge", webOrder.getAmount(), String.join(",", tags));
    statsd.incrementCounter("weborder", String.join(",", tags));
}

Я пытаюсь сгенерировать топлист списка данных по типу транзакции.Я не получаю правильную сумму ни в одной из метрик (пробовал в основном count, gauge и histogram.sum).Вот мой конфиг datadog:

{
  "viz": "toplist",
  "requests": [
    {
      "q": "top(sum:projecta.webtransactions.amount_histogram.sum{$TransactionType} by {transactiontype}, 10, 'sum', 'desc')",
      "type": "area",
      "style": {
        "palette": "dog_classic",
        "type": "solid",
        "width": "normal"
      },
      "aggregator": "sum",
      "conditional_formats": []
    }
  ],
  "autoscale": true
}

Что мне не хватает?Это правильный способ записи стоимости денег?Должен ли я сделать какой-либо накопительный пакет в конфигурации?Любая помощь приветствуется.

...