Разработка источника данных Grafana

1

Я хочу создать собственный источник данных для отображения данных на графике графаны. Теперь я тестирую поддельный простой json в grafana, чтобы выяснить, как все работает за кулисами. У меня есть этот код, который запрашивает данные, которые я хочу показать в графане:

query(options) {
    var query = this.buildQueryParameters(options);
    query.targets = query.targets.filter(t => !t.hide);

    if (query.targets.length <= 0) {
      return this.q.when({data: []});
    }

    console.log('query Return: ');
    console.log(this.doRequest({url: this.url + '/query',data: query,method: 'POST'}));
    console.log('\n');

    var teste = this.doRequest({
      url: this.url + '/query',
      data: query,
      method: 'POST'
    });

    console.log('teste Return: ');
    console.log(teste);
    console.log('\n');
    return teste;
  }

И я получаю этот возврат: результат console.log(teste)

Как я могу получить доступ к teste. $$ state.value.data ["0"]. Datapoints ["0"] например?

Если я попытался получить доступ к teste или teste. Состояние $$, это нормально. Но когда я пытаюсь teste. $$ state.pur или любые атрибуты в teste. Дерево состояний $$ У меня есть неопределенный ответ.

Теги:
grafana
datasource

1 ответ

2

Я уверен, что ваш запрос асинхронный, поэтому для проверки результатов вам нужно использовать обратный вызов:

var teste = this.doRequest({
    url: this.url + '/query',
    data: query,
    method: 'POST'
}, function(result){
    console.log(result) <----- 
});

или тогда, если возвращается Обещание:

var teste = this.doRequest({
    url: this.url + '/query',
    data: query,
    method: 'POST'
}).then(function(result){
    console.log(result) <-----
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню