潮流时间戳写

时间:2018-04-06 15:29:24

标签: precision influxdb

如何格式化数据以让Influxdb知道myscript正在发送时间戳。

我有一个发送的脚本:

  

ping,host = 10.22.0.253,hostname = JAYNET01AA,location = Lab,function = Router rtt = 1.26 timestamp = 1.5230279389238705e + 18   ping,host = 10.22.0.254,hostname = JAYNET01BB,location = Lab,function = Router rtt = 2.0 timestamp = 1.5230279389238705e + 18   ping,host = 10.254.22.105,hostname = JAYNET02BB,location = Lab,function = Router rtt = 0.483 timestamp = 1.5230279389238705e + 18

我在最后添加了一个精确变量(以流量1.2默认为的纳秒为单位)。但似乎涌入的人并不认识它。也许你知道我需要以什么格式将数据推送到Influxdb以使潮流数据库知道这是时间戳数据。

P.S我收到了这个回复 ":糟糕的时间戳\ n无法解析"

是否有简单的方法将时间戳转换为RFC 3339格式? 感谢

1 个答案:

答案 0 :(得分:0)

您需要以线路协议发送数据。

https://docs.influxdata.com/influxdb/v1.5//write_protocols/line_protocol_tutorial/#timestamp

删除timestamp = part将使Influxdb为数据提供时间戳。

但是,如果要使用脚本将数据发送到数据库中 - 如果完全保留时间戳,则会从数据库服务器为数据提供时间戳。

此外,如果您开始插入自己的时间戳,则存在高级别的卡片性和最终性能问题的风险。

我没有足够的代表发表评论并提出问题,因此有可能删除这些内容,但如果我知道什么类型的脚本(powershell / bash /其他)我可以提供更多。

但是,如果您正在运行bash或powershell脚本,您还可以使用Telegraf代理(Influx堆栈的一部分)和内置的ping测试。如果你想要一个更自定义的ping测试,你可以用bash或powershell编写脚本,然后使用EXEC插件运行脚本并获取信息。

但事实是,如果你省略时间戳,那么Influx会在写入数据时添加一个。如果这是时间戳的唯一要求,那么我将完全从脚本中删除它。

EXEC PLUGIN

此链接用于将powershell script发送到数据库的数据。

希望有所帮助,我有一个可怕的时间试图让PowerShell发送数据流入。 exec插件没有很好的文档记录。

另外,如果您还没有我建议更新到InfluxDB 1.4 / 1.5 - 涉及内存处理方式的新功能由Influx处理(还有更多)。

此致

菲尔

编辑:我也不认为时间戳值有效。你是 需要逃避无数字部分。

https://docs.influxdata.com/influxdb/v1.5/write_protocols/line_protocol_reference/#quoting-special-characters-and-additional-naming-guidelines

很抱歉,如果链接未格式化,我正在通过手机发布,我无法确定如何正确发布。