Relevant telegraf.conf:
[[inputs.exec]]
command = "/somedirectory/my_script.py"
timeout = "10s"
data_format = "json"
tag_keys = ["hostname","outputname","busname","alarmname"]
interval = "10s"
name_suffix = "_myscript"
System info:
Distributor ID: Ubuntu
Description: Ubuntu 18.04.3 LTS
Release: 18.04
Codename: bionic
Telegraf 1.12.1 (git: HEAD 8de4116)
Steps to reproduce:
- my_script.py returns json:
[{
"hostname": "testhost1",
"systemVoltage": -54.1,
"systemCurrent": -3.8,
"tables": [{
"outputnumber": 0.0,
"outputname": "1A-CC01-PC01",
"outputcurrent": -2.7,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 1.0,
"outputname": "2A-CC01-KA01",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 2.0,
"outputname": "3A-CC01-CC02",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 3.0,
"outputname": "4A",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 4.0,
"outputname": "5A",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 5.0,
"outputname": "6A-CC01-88-INV01-A",
"outputcurrent": -1.1,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 6.0,
"outputname": "1B-CC01-PC01",
"outputcurrent": -2.8,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 7.0,
"outputname": "2B-CC01-KA01",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 8.0,
"outputname": "3B-CC01-CC02",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 9.0,
"outputname": "4B",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 10.0,
"outputname": "5B",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 11.0,
"outputname": "6B-CC01-88-INV01-B",
"outputcurrent": -1.3,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"busnumber": 0.0,
"busname": "A--48A",
"busvoltage": -54.1,
"buscurrent": -3.8
}, {
"busnumber": 1.0,
"busname": "B--48B",
"busvoltage": -53.9,
"buscurrent": -4.2
}, {
"alarmnumber": 0.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 1.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 2.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 3.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 4.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}]
}, {
"hostname": "testhost2",
"systemVoltage": 27.5,
"systemCurrent": 9.5,
"tables": [{
"outputnumber": 0.0,
"outputname": "1A",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 1.0,
"outputname": "2A",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 2.0,
"outputname": "3A",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 3.0,
"outputname": "4A",
"outputcurrent": 0.6,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 4.0,
"outputname": "5A",
"outputcurrent": 6.5,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 5.0,
"outputname": "6A",
"outputcurrent": 0.0,
"outputfusestatus": 2.0,
"outputenable": 1.0
}, {
"outputnumber": 6.0,
"outputname": "1B",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 7.0,
"outputname": "2B",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 8.0,
"outputname": "3B",
"outputcurrent": 0.0,
"outputfusestatus": 2.0,
"outputenable": 1.0
}, {
"outputnumber": 9.0,
"outputname": "4B",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 10.0,
"outputname": "5B",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"outputnumber": 11.0,
"outputname": "6B",
"outputcurrent": 0.0,
"outputfusestatus": 1.0,
"outputenable": 1.0
}, {
"busnumber": 0.0,
"busname": "A-24V",
"busvoltage": 27.6,
"buscurrent": 0.6
}, {
"busnumber": 1.0,
"busname": "B-12V",
"busvoltage": 13.8,
"buscurrent": 0.0
}, {
"alarmnumber": 0.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 1.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 2.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 3.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}, {
"alarmnumber": 4.0,
"alarmname": "\u0000",
"alarmstatus": 1.0
}]
}]
Expected behavior:
Each output, bus and alarm would be tagged accordingly with tagkey_subname = value, etc.
Actual behavior:
> exec_myscript,host=default,hostname=testhost1 systemCurrent=-3.8,systemVoltage=-54.1,tables_0_outputcurrent=-2.7,tables_0_outputenable=1,tables_0_outputfusestatus=1,tables_0_outputnumber=0,tables_10_outputcurrent=0,tables_10_outputenable=1,tables_10_outputfusestatus=1,tables_10_outputnumber=10,tables_11_outputcurrent=-1.3,tables_11_outputenable=1,tables_11_outputfusestatus=1,tables_11_outputnumber=11,tables_12_buscurrent=-3.7,tables_12_busnumber=0,tables_12_busvoltage=-54.1,tables_13_buscurrent=-4.1,tables_13_busnumber=1,tables_13_busvoltage=-53.9,tables_14_alarmnumber=0,tables_14_alarmstatus=1,tables_15_alarmnumber=1,tables_15_alarmstatus=1,tables_16_alarmnumber=2,tables_16_alarmstatus=1,tables_17_alarmnumber=3,tables_17_alarmstatus=1,tables_18_alarmnumber=4,tables_18_alarmstatus=1,tables_1_outputcurrent=0,tables_1_outputenable=1,tables_1_outputfusestatus=1,tables_1_outputnumber=1,tables_2_outputcurrent=0,tables_2_outputenable=1,tables_2_outputfusestatus=1,tables_2_outputnumber=2,tables_3_outputcurrent=0,tables_3_outputenable=1,tables_3_outputfusestatus=1,tables_3_outputnumber=3,tables_4_outputcurrent=0,tables_4_outputenable=1,tables_4_outputfusestatus=1,tables_4_outputnumber=4,tables_5_outputcurrent=-1.1,tables_5_outputenable=1,tables_5_outputfusestatus=1,tables_5_outputnumber=5,tables_6_outputcurrent=-2.8,tables_6_outputenable=1,tables_6_outputfusestatus=1,tables_6_outputnumber=6,tables_7_outputcurrent=0,tables_7_outputenable=1,tables_7_outputfusestatus=1,tables_7_outputnumber=7,tables_8_outputcurrent=0,tables_8_outputenable=1,tables_8_outputfusestatus=1,tables_8_outputnumber=8,tables_9_outputcurrent=0,tables_9_outputenable=1,tables_9_outputfusestatus=1,tables_9_outputnumber=9 1569319783000000000
> exec_myscript,host=default,hostname=testhost2 systemCurrent=9.6,systemVoltage=27.5,tables_0_outputcurrent=0,tables_0_outputenable=1,tables_0_outputfusestatus=1,tables_0_outputnumber=0,tables_10_outputcurrent=0,tables_10_outputenable=1,tables_10_outputfusestatus=1,tables_10_outputnumber=10,tables_11_outputcurrent=0,tables_11_outputenable=1,tables_11_outputfusestatus=1,tables_11_outputnumber=11,tables_12_buscurrent=9.6,tables_12_busnumber=0,tables_12_busvoltage=27.5,tables_13_buscurrent=0,tables_13_busnumber=1,tables_13_busvoltage=13.8,tables_14_alarmnumber=0,tables_14_alarmstatus=1,tables_15_alarmnumber=1,tables_15_alarmstatus=1,tables_16_alarmnumber=2,tables_16_alarmstatus=1,tables_17_alarmnumber=3,tables_17_alarmstatus=1,tables_18_alarmnumber=4,tables_18_alarmstatus=1,tables_1_outputcurrent=0,tables_1_outputenable=1,tables_1_outputfusestatus=1,tables_1_outputnumber=1,tables_2_outputcurrent=0,tables_2_outputenable=1,tables_2_outputfusestatus=1,tables_2_outputnumber=2,tables_3_outputcurrent=0,tables_3_outputenable=1,tables_3_outputfusestatus=1,tables_3_outputnumber=3,tables_4_outputcurrent=9.6,tables_4_outputenable=1,tables_4_outputfusestatus=1,tables_4_outputnumber=4,tables_5_outputcurrent=0,tables_5_outputenable=1,tables_5_outputfusestatus=2,tables_5_outputnumber=5,tables_6_outputcurrent=0,tables_6_outputenable=1,tables_6_outputfusestatus=1,tables_6_outputnumber=6,tables_7_outputcurrent=0,tables_7_outputenable=1,tables_7_outputfusestatus=1,tables_7_outputnumber=7,tables_8_outputcurrent=0,tables_8_outputenable=1,tables_8_outputfusestatus=2,tables_8_outputnumber=8,tables_9_outputcurrent=0,tables_9_outputenable=1,tables_9_outputfusestatus=1,tables_9_outputnumber=9 1569319783000000000
Additional info:
Relevant telegraf.conf:
System info:
Distributor ID: Ubuntu
Description: Ubuntu 18.04.3 LTS
Release: 18.04
Codename: bionic
Telegraf 1.12.1 (git: HEAD 8de4116)
Steps to reproduce:
[{ "hostname": "testhost1", "systemVoltage": -54.1, "systemCurrent": -3.8, "tables": [{ "outputnumber": 0.0, "outputname": "1A-CC01-PC01", "outputcurrent": -2.7, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 1.0, "outputname": "2A-CC01-KA01", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 2.0, "outputname": "3A-CC01-CC02", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 3.0, "outputname": "4A", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 4.0, "outputname": "5A", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 5.0, "outputname": "6A-CC01-88-INV01-A", "outputcurrent": -1.1, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 6.0, "outputname": "1B-CC01-PC01", "outputcurrent": -2.8, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 7.0, "outputname": "2B-CC01-KA01", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 8.0, "outputname": "3B-CC01-CC02", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 9.0, "outputname": "4B", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 10.0, "outputname": "5B", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 11.0, "outputname": "6B-CC01-88-INV01-B", "outputcurrent": -1.3, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "busnumber": 0.0, "busname": "A--48A", "busvoltage": -54.1, "buscurrent": -3.8 }, { "busnumber": 1.0, "busname": "B--48B", "busvoltage": -53.9, "buscurrent": -4.2 }, { "alarmnumber": 0.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 1.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 2.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 3.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 4.0, "alarmname": "\u0000", "alarmstatus": 1.0 }] }, { "hostname": "testhost2", "systemVoltage": 27.5, "systemCurrent": 9.5, "tables": [{ "outputnumber": 0.0, "outputname": "1A", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 1.0, "outputname": "2A", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 2.0, "outputname": "3A", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 3.0, "outputname": "4A", "outputcurrent": 0.6, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 4.0, "outputname": "5A", "outputcurrent": 6.5, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 5.0, "outputname": "6A", "outputcurrent": 0.0, "outputfusestatus": 2.0, "outputenable": 1.0 }, { "outputnumber": 6.0, "outputname": "1B", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 7.0, "outputname": "2B", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 8.0, "outputname": "3B", "outputcurrent": 0.0, "outputfusestatus": 2.0, "outputenable": 1.0 }, { "outputnumber": 9.0, "outputname": "4B", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 10.0, "outputname": "5B", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "outputnumber": 11.0, "outputname": "6B", "outputcurrent": 0.0, "outputfusestatus": 1.0, "outputenable": 1.0 }, { "busnumber": 0.0, "busname": "A-24V", "busvoltage": 27.6, "buscurrent": 0.6 }, { "busnumber": 1.0, "busname": "B-12V", "busvoltage": 13.8, "buscurrent": 0.0 }, { "alarmnumber": 0.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 1.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 2.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 3.0, "alarmname": "\u0000", "alarmstatus": 1.0 }, { "alarmnumber": 4.0, "alarmname": "\u0000", "alarmstatus": 1.0 }] }]Expected behavior:
Each output, bus and alarm would be tagged accordingly with tagkey_subname = value, etc.
Actual behavior:
Additional info: