OpenTSDB中的一个奇怪现象


功能:

有个采集点,后端会周期性的采集指标数据,以及指标实例(TimeSeries)对应的元数据信息。 因此也就是要定期的更新TSMeta。


程序刚启动运行都很OK, 可是第二天看日志发现,很多Interal Server Error.!


不明所以!,所以就进入测试吧。

....此处省略大量的字!!

...

最后发现了一个现象,因为我的元数据信息基本都存放在TSMeta的 custom这个属性中,custom也是个map类型的,

其中有个定义的字段名称为ifNumber,也就是map的key值。

那么问题来了, 第一次更新TSMeta的时候 都OK, 元数据信息也都更新到库里面去了,而当第二次更新该TSMeta的时候就会报错“Interal Server Error”!

而当我把ifNumber这个命名改为其他命名的时候,就又一切都OK了。!


难倒是命名原因??

最后我测试了  **If**,   **Fi**... 等等命名也都会出现同样的问题,

我就有些凌乱了。 !!


最终解决方案:

(1) 把ifNumber这个命名给改了,

(2) 想OpenTSDB 的Github中提交了个issue  https://github.com/OpenTSDB/opentsdb/issues/514



附上测试代码:

OpenTSDB中的一个奇怪现象_第1张图片



关于该问题 已经提交到了OpenTSDB 源码的讨论话题中:

https://github.com/OpenTSDB/opentsdb/issues/514

官方已经标记为BUG。

OpenTSDB中的一个奇怪现象_第2张图片



你可能感兴趣的:(OpenTSDB中的一个奇怪现象)