使用collectd添加或修改Influxdb的列(字段/标记)

时间:2017-10-06 03:23:54

标签: influxdb collectd influxdb-python

我尝试实现自己的collectd python插件,它可以将数据存储到Influxdb。

我按照本网站的教程:https://blog.dbrgn.ch/2017/3/10/write-a-collectd-python-plugin/

以及其他教程。 以下是上述网站的示例代码。

PATH = '/sys/class/thermal/thermal_zone0/temp'
def config_func(config): 
    path_set = False 

    for node in config.children: 
        key = node.key.lower() 
        val = node.values[0] 

        if key == 'path': 
            global PATH 
            PATH = val 
            path_set = True 
        else: collectd.info('cpu_temp plugin: Unknown config key "%s"' % key) 
        if path_set: 
            collectd.info('cpu_temp plugin: Using overridden path %s' % PATH) 
        else: collectd.info('cpu_temp plugin: Using default path %s' % PATH)

def read_func(): 
    # Read raw value 
    with open(PATH, 'rb') as f: 
    temp = f.read().strip() 

    # Convert to degrees celsius 
    deg = float(int(temp)) / 1000 

    # Dispatch value to collectd 
    val = collectd.Values(type='temperature') 
    val.plugin = 'cpu_temp' 
    val.dispatch(values=[deg])

collectd.register_config(config_func) 
collectd.register_read(read_func)

我尝试了它并将数据存储在Influxdb中,但是我如何添加或修改列名称(或者它应该是关于Influxdb的字段和标记)?

成功运行示例代码后,我看到列名称是Influxdb中的time,host,type,type_instance和value。 但是,我对这些列名设置在哪里感到很困惑?

在/etc/collectd.conf或脚本中,没有关于这些列名的设置。 如果我想添加新列或将列名称(例如'type')修改为其他名称(如'resource'),该怎么办?

是否可以添加更多列或修改这些列?我在哪里可以找到这些名称是如何命名的?

感谢〜

0 个答案:

没有答案