Ich habe die Bitraten von Live-Streams gefiltert und bekam die Ausgabe unten. Ich habe eine API mit Python und Pipe Continuous-Daten in Influxdb konstruiert, die wie Python api.py | überwacht werden sollte python influx.py. Ich kann diese Ausgabe jedoch nicht in Influxdb speichern. Bei Bedarf kann ich meinen API-Code zeigen.Bitrate und Zeit in Influxdb
Click here to show output to be stored in influxdb
#!usr/bin/python
import sys
import datetime
from influxdb import InfluxDBClient
from influxdb.client import InfluxDBClientError
from influxdb import DataFrameClient
import os
import time
client=InfluxDBClient('localhost',8086,'admin','admin',database='stackanm')
client.create_database('stackanm')
def store(bitrate,time):
json=[
{
"measurement":"bitrates",
"tags":{
"time":time,
"fields":{
"bitrate":bitrate
}
}
}
]
client.write_points(json,time_precision='u')
f = os.fdopen(sys.stdin.fileno(),'r',0)
for line in f:
elements = line.strip().split()
if len(elements) == 1:
bitrate = elements[0]
unixtime = elements[1].split('.')
stdtime = datetime.datetime.utcfromtimestamp(long(float(unixtime[1]))).strftime('%Y-%m-%dT%H:%M:%S')
influxtime = ".".join([stdtime,unixtime[1]])
store(bitrate,float(elements[1]),influxtime)
ja ich verwende die Tags aber nicht in der Lage zu, diese Live-Streams in influxdb zu schicken und sie plotten –