Как получить отладочную информацию при разработке тикового скрипта для kapacitor?

Мне интересно, если во время разработки тикскрипта, есть ли возможность вывести состояние потока после прохождения через узел обработки (войти в файл, stdout)?

4 ответа

Я нашел полезным положить |httpOut('id') в целях отладки. Позже вы можете получить доступ http://kapacitor-host:9092/kapacitor/v1/tasks/<task_id>/<httpOut_id> и посмотреть, какие данные проходят через этот узел.

Kapacitor имеет узел журнала, который позволяет вывести состояние потока в файлы журнала Kapacitor.

При использовании это будет выглядеть примерно так:

stream.from()...
  |window()
      .period(10s)
      .every(10s)
  |log()
  |count('value')

Бег kapacitor show TASK_NAME Команда должна показать вам некоторую информацию о самой задаче, но под DOT: В разделе есть описание графика, который содержит статистику о том, сколько точек данных достигло определенного узла.

Другой способ отладки будет использовать InfluxDBOutNode хранить точки и посмотреть, что обрабатывается. Надеюсь это поможет.

Я могу сбросить данные из скрипта в отдельную базу данных...

stream
    |from()
        .database('telegraf')
        .measurement('cpu')
        .groupBy(*)
        .where(lambda: "cpu" == 'cpu-total')
    |eval( lambda: 100.0 - "usage_idle" )
        .as('usage_util')
        .keep()
        .quiet()
    |InfluxDBOut()
        .create()
        .database('debugging')

Затем я использую Chronograf Explorer для просмотра результатов...

Другие вопросы по тегам