splunk - 使用 SPLUNK 查询时时差列为空
问题描述
我有以下格式的两列开始时间和结束时间。我需要计算总时间并将差异添加为新列。
使用的 Splunk 查询:
| rename per_stage_info{}.starttime as starttime, per_stage_info{}.finishtime as finishtime
| eval st=strptime(starttime, "%Y/%m/%d %H:%M:%S")
| eval ft=strptime(finishtime, "%Y/%m/%d %H:%M:%S")
| table per_stage_info{}.stage_name,starttime,finishtime, ft, st,ft-st
开始时间值
2021/10/11 08:41:40
2021/10/11 08:48:07
2021/10/11 08:55:09
2021/10/11 08:41:40
完成时间值
2021/10/11 08:48:00
2021/10/11 08:51:38
2021/10/11 08:55:14
2021/10/11 08:55:14
转换后的英尺
1633942080.000000
1633942298.000000
1633942514.000000
1633942514.000000
转换后的st
1633941700.000000
1633942087.000000
1633942509.000000
1633941700.000000
ft-st 列为空
为什么我在 ft-st 列中看不到计算出的时间差?我尝试了多种其他方式,但该列是空的。
解决方案
该table
命令不执行计算。为此使用eval
。
| rename per_stage_info{}.starttime as starttime, per_stage_info{}.finishtime as finishtime
| eval st=strptime(starttime, "%Y/%m/%d %H:%M:%S")
| eval ft=strptime(finishtime, "%Y/%m/%d %H:%M:%S")
| eval diff=ft-st
| table per_stage_info{}.stage_name,starttime,finishtime, ft, st,diff
推荐阅读
- amazon-web-services - 如何按日期将文件子集从一个 S3 存储桶文件夹复制到另一个
- java - 如何将 Android 日历设置为航海或军事时区
- c# - 指定类型的某些属性
- chocolatey - 在 Windows 7 64 位上安装巧克力时出错
- python-3.x - 在没有指定协议的情况下打开网页时出现 Selenium InvalidArgumentException (http/https)
- python - 使用 Django 的 AJAX 调用正在将响应打印到空白页
- kubernetes - 在 K8 集群外设置 prometheus
- python - 如何在不计算空格的情况下找到字符串的长度?
- android - Mapbox Flutter:初始相机位置显示不正确的位置
- python - 如何使用 python 创建 Gcp 内存存储