时间表达式
简介
HertzBeat支持使用表达式计算监控采集时的相对时间,支持更加灵活的在监控模板中定义时间。
语法
${FORMATTER [{ + | - }<DURATION> <TIME_UNIT>]}
FORMATTER: 决定表达式计算的结果的格式DURATION: 时间段大小,正整数TIME_UNIT: 时间段单位
支持的格式化类型
示例输出以当前时间为
2022-04-24 02:40:00.123
| 名称 | 描述 | 示例 |
|---|---|---|
| @now | 格式化为 yyyy-MM-dd HH:mm:ss | 2022-04-24 02:40:00 |
| @date | 格式化为 yyyy-MM-dd | 2022-04-24 |
| @timestamp10 | 返回10位时间戳 | 1650768000 |
| @timestamp | 返回13位时间戳 | 1650768000000 |
| @time | 格式化为 HH:mm:ss | 02:40:00 |
| @year | 格式化为 yyyy | 2022 |
| @month | 格式化为 MM | 04 |
| @day | 格式化为 dd | 24 |
| @hour | 格式化为 HH | 02 |
| @minute | 格式化为 mm | 40 |
| @millisecond | 格式化为 SSS | 123 |
| @second | 格式化为 ss | 00 |
支持的时间单位
| 名称 | 描述 |
|---|---|
| y | 年 |
| M | 月 |
| d | 日 |
| H | 小时 |
| m | 分钟 |
| s | 秒 |
| w | 周 |
在哪里可以使用
- HTTP协议监控类型的请求参数
- HTTP协议监控类型的请求体
使用示例
- 简单表达式
${@now}获取当前时间,并格式化为yyyy-MM-dd HH:mm:ss${@time+1H}计算当前时间一小时之后的时间,并格式化为HH:mm:ss${@time+1H+15m+30s}计算当前时间一小时15分钟30秒之后的时间,并格式化为HH:mm:ss
- 复杂表达式模板(如果内置的格式化器无法满足需要,可以组合使用多个表达式)
${@year}年${@month}月${@day}日,获取当前日期并按照 yyyy年MM月dd日格式返回