我们安装了 Grafana 服务器,并且除了 Grafana 之外,我们还配置了 Loki 作为 docker 容器服务。
我尝试将日志从 lambda 发送到 loki 的端点:/loki/api/v1/push。 Lambda 返回状态代码 400。
这是我正在发送的有效负载示例:
{“streams”:[{“stream”:{“job”:“loki_testing”,“source”:“loki”},“values”:[[“1704364172000”,“test”]]}]}
在 grafana 中,作业和源很少可见,但它会返回:
更新
我使用 CURL 推送日志,而未使用 Lambda 推送相同的日志。
当我检查从 grafana 中的 CURL 命令推送的日志时,它返回:
如果有人对上述两个问题有任何想法,请告诉我。 任何帮助将不胜感激。
堆栈溢出社区, 我已经解决了上述问题。该问题与我用来发送到 Loki 网关的纪元时间有关。我没有被 Loki 录取。
这是代码,我用来纠正纪元时间:
DATE_STRING = LOG_STRING['createdDate'] #Used to fetch from logs.
print(DATE_STRING)
DT = datetime.datetime.strptime(DATE_STRING, '%Y-%m-%dT%H:%M:%S.%fZ') #Converting the date to required format.
FORMATTED_DT = DT.strftime('%Y-%m-%d %H:%M:%S') # Converting it in string format.
EPOCH_TIME = str(int(time.time())) # Fetching current, as the Date string is from different time as compared to current time, It will be send as value in loki, not as timestamp.
EPOCH_TIME = EPOCH_TIME + "000000000" # Converting it into required format, by adding few zero.