0
私はwrite_points()を使用して、Pythonでinfluxdbデータベースにデータを追加しようとしています。しかし、write_pointsのタイムスタンプ部分でエラーが発生しています。私が最初に Python influxdb timestamp valueerror
info = line.split()
s_time = info[2]
i_time = "20" + s_time[6:8] + "-" + s_time[0:2] + "-" + s_time[3:5] + ' ' + s_time[9:]
fixedtime = datetime.datetime.strptime(i_time, "%Y-%m-%d %H:%M:%S")
を使用して、私はまた、タイムスタンプint型
inttime = int(time.time()*1000);
を作ってみましたinfluxdb に必要なすべての他の部分とJSONまでの時間を追加、タイムスタンプ複数の方法を定義しようとしています
私にエポックタイムを与えます。私はエポックタイムを使用する場合、これらのタイムスタンプの どちらも、私のコード
dbclient.write_points(db_point, time_precision='ms', protocol='json')
にし、line_protocol.py
で
if isinstance(timestamp, Integral):
return timestamp # assume precision is correct if timestamp is int
if isinstance(_get_unicode(timestamp), text_type):
timestamp = parse(timestamp)
if isinstance(timestamp, datetime):
if not timestamp.tzinfo:
timestamp = UTC.localize(timestamp)
ns = (timestamp - EPOCH).total_seconds() * 1e9
if precision is None or precision == 'n':
return ns
elif precision == 'u':
return ns/1e3
elif precision == 'ms':
return ns/1e6
elif precision == 's':
return ns/1e9
elif precision == 'm':
return ns/1e9/60
elif precision == 'h':
return ns/1e9/3600
raise ValueError(timestamp)
の最後の行に次の行から値のエラーが発生します整数は何とかセットに変換されるので、ifステートメントのどれも渡されませんが、なぜ文字列がifステートメントの1つを渡すのか分かりません。