telegraf / influxdb: script exec customizado, algumas colunas funcionam, outras não

0

Eu quero inserir alguns dados personalizados em influxdb via telegraf (para posterior visualização com grafana).

Meu agente gera as métricas como

# /tmp/temp.pl
temperature,host=ludwig.lan ada0=51.0,ada1=48.0,tz0=27.9,tz1=29.9,cpu0=38.0,cpu1=39.0,cpu2=38.0,cpu3=38.0

Este agente é chamado de telegraf com uma definição de entrada como

[[inputs.exec]]
  commands = [ "/tmp/temp.pl" ]
  timeout = "5s"
  name_suffix = "_influx"
  data_format = "influx"

Basicamente funciona, mas apenas as métricas tz * e cpu * estão chegando ao influxdb, mas as métricas ada * agora aparecem:

name: temperature_influx
time                cpu0 cpu1 cpu2 cpu3 host       tz0  tz1
----                ---- ---- ---- ---- ----       ---  ---
1518437880000000000 42   44   40   44   ludwig.lan 27.9 29.9
1518437890000000000 43   44   44   38   ludwig.lan 27.9 29.9
1518437900000000000 42   46   39   38   ludwig.lan 27.9 29.9
1518437910000000000 41   41   42   44   ludwig.lan 27.9 29.9

Eu posso reproduzir o mesmo resultado estranho ao reimplementar o agente para usar o formato JSON.

Eu tentei qualquer coisa bizarra que eu pudesse pensar em enganar o telegraf / influxdb para fazer com que funcionasse como renomear as colunas ada para outra coisa ou até mesmo escrever as datas ada * nos campos cpu *, mas como se houvesse algum tipo de pecado original Eu não posso fazer os valores ada * aparecerem no influxdb.

Como se os dados em si estivessem estragados por estranhos caracteres UTF8 invisíveis, mas os dados são lidos, analisados e formatados por um script perl, isso deve ser algum saneamento, mesmo que a saída smartctl seja estranha.

Eu devo estar completamente faltando algo óbvio superstupid, qualquer sugestão bem-vinda.

    
por detue 12.02.2018 / 13:39

0 respostas

Tags