gpt4 book ai didi

python - Prometheus 导出器 - 读取包含过去一天数据的 CSV 文件

转载 作者:行者123 更新时间:2023-12-04 13:56:39 24 4
gpt4 key购买 nike

我正在编写一个 Prometheus 导出器,它必须处理不同的 CSV 文件。它们中的每一个都包含过去一整天的数据(目标是让导出器每天读取一个新的 CSV 文件。每天将一个 CSV 文件上传到服务器,其中包含前一天的数据。
在 CSV 文件中,我每 5 分钟有一个相同的指标。例如:

Date;Time;data
23.03.20;23:55:00;1
23.03.20;23:50:00;50
23.03.20;23:45:00;3
我很难在 Prometheus 中正确添加这些数据。
class CSVCollector(object):
def collect(self):
# We list all the min files in the current directory
list_min = glob.glob("min*.csv")
metric = GaugeMetricFamily(
'day_tests_seconds',
'kw', labels=["jobname"])
for min in list_min :
with open(min) as csv_file:
csv_reader = csv.reader(csv_file, delimiter=';')
line_count = 0
for row in csv_reader:
if line_count == 1:
correct_date_format = row[0][:6] + "20" + row[0][6:]
datetime_row = correct_date_format + ';' + row[1]
timestamp = int(time.mktime(datetime.datetime.strptime(datetime_row, "%d.%m.%Y;%H:%M:%S").timetuple()))
metric.add_metric(str(line_count), int(row[4]), timestamp)
line_count += 1
yield metric



if __name__ == '__main__':
# Usage: json_exporter.py port endpoint
start_http_server(int(sys.argv[1]))
REGISTRY.register(CSVCollector())
while True: time.sleep(1)

普罗米修斯只是读取第一行,将其添加为度量标准,然后每次读取都完全相同 擦伤 导出商。我究竟做错了什么 ?我觉得这个数据应该是一个 Jauge,随着它的上升和下降,但 Prometheus 似乎不希望在一个 中来自同一个 Jauge 的不同数据。刮 ?

最佳答案

page介绍了一种将历史数据导入 Prometheus 的方法。
.txt 文件为 OpenMetrics 格式,示例导入命令为:tsdb import rrd_exported_data.txt /var/lib/prometheus/ --max-samples-in-mem=10000 .
示例文件 rrd_exported_data.txt ( [metric]{[labels]} [number value] [timestamp ms] ):

collectd_df_complex{host="myserver.fqdn.com",df="var-log",dimension="free"} 5.8093906125e+10 1582226100000
collectd_varnish_derive{host="myserver.fqdn.com",varnish="request_rate",dimension="MAIN.client_req"} 2.3021666667e+01 1582226100000
collectd_df_complex{host="myserver.fqdn.com",df="var-log",dimension="free"} 5.8093906125e+10 1582226100000
collectd_load{host="myserver.fqdn.com",type="midterm"} 0.0155 1582226100000
也许你可以在你的 python 代码中执行命令。

关于python - Prometheus 导出器 - 读取包含过去一天数据的 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61202749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com