создать Datadog Graph, чтобы отображать количество обращений к конечной точке API в секунду - PullRequest
0 голосов
/ 02 мая 2018

У меня есть API с 10 конечными точками (контрактами). и я отправляю логи в IIS для data-dog из API. Я также установил агент data-dog на сервер.

Теперь я пытаюсь создать график для всех попаданий в конечную точку в секунду. будет только один график, и все конечные точки TPS будут показаны на графике. Как мне этого добиться? какие-либо предложения?

Я пытался создать другую матрицу, но не смог этого достичь.

Я прочитал, что файл парсера должен быть создан.

import time
from datetime import datetime
 ...
def my_log_parser(logger, test):
metric_name, date, metric_value, extras = line.split('|')
# Convert the iso8601 date into a unix timestamp, assuming the timestamp
# string is in the same timezone as the machine that's parsing it.
date = datetime.strptime(date, "%Y-%m-%d %H:%M:%S.%f")
tags = extras.split(',')
date = time.mktime(date.timetuple())
metric_attributes = {
    'tags': tags,
    'metric_type': 'gauge',
}
return (metric_name, date, metric_value, metric_attributes)

1 Ответ

0 голосов
/ 21 мая 2018

На самом деле вам нужно создать общий метод.

Create counter is the metric provided by the dataDog. 
val metric:mutable.Map[String, Counter]
def updateCounter(metricName:String, increment:Int, tags:Map[String, String])={
If(metric.isDefinedAt(metricName)){
//update the existing counter in metric map
}else{
//create the counter and update the metric map
}
}

Теперь, когда вы нажимаете разные конечные точки, просто вызовите метод updateCounter, чтобы получить метрику с конкретным названием вашего маршрута.

Например, у вас есть маршрут, как сложение и вычитание Затем вызовите метод счетчика обновлений с именем-метрикой сложения и вычитания.

...