2017-12-02 8 views
0

私はMariaDBからInfluxDB形式にデータをエクスポートすることをここ数日間は試みています。MariaDBからInfluxDBへの移行方法日時から時刻

私は、次の構文を使用してMariaDBから自分のデータをエクスポートします。

select CONCAT("insert cpu_load,host=" ,HostName ," value=", 
CPUUsedPercentage," ",UNIX_TIMESTAMP(CPUTime)) 
from monitor.CPUStats; 

出力は次のとおりです。

insert cpu_load,host=host1 value=2.85 1696683600 

CPUTIMEデータ型は、この形式の日時です:

2/11/2017 3:56:18 PM 


The output insert statement gets inserted in **InfluxDB** but the queries in **Grafana** or **Telegraf** are not retrieving nothing because of the time formats. 

クエリは次のようになります。

SELECT mean("value") AS "mean_value" FROM "monitor"."autogen"."cpu_load" 
WHERE time > now() - 1h AND "host"='prodvert03' GROUP BY time(10s) FILL(null) 

とエラーMSGがある:

Your query is syntactically correct but returned no results 

だから私は、時間列形式であると考えています。 UNIX_TIMESTAMP(CPUTime)このトリックはありません。

アイデアや助けをいただければ幸いです。

Thxを

答えて

0
SELECT AVG(`value`) AS "mean_value" 
    FROM `monitor`.`autogen`.`cpu_load` 
    WHERE `time` > NOW() - INTERVAL 1 HOUR 
     AND `host` = 'prodvert03' 
    GROUP BY FLOOR(UNIX_TIMESTAMP(`time`)/10); 

が近づいてきます。私はFILL(null)の意味を知らない。

多くの無関係な構文の違い。

+0

Thx - ただしsqlではありません - 時刻形式です!私は理解しようとしている –

0

デフォルトでinfluxdbは、ナノ秒の時間精度で動作しながら

挿入cpu_load、ホスト= HOST1値= 2.85 1696683600

は、私の知る限り、エポックからの秒のタイムスタンプを使用して、あなたのinfluxdb INSERT文のように見えます。だから、私はあなたの挿入されたデータがあなたが期待しているタイムスタンプでinfluxdbに格納されていないと思う。

infx CLIツールで精度を設定する必要があります。 precision <format> specifies the format of the timestamp: rfc3339, h, m, s, ms, u or ns 詳細については、InfluxDBのドキュメントを参照してください。

関連する問題