timestamp.get_timestamp

支持的语言:
timestamp.get_timestamp(unix_seconds, optional timestamp_format/time_granularity, optional timezone)

说明

此函数会返回一个格式为 YYYY-MM-DD 的字符串,表示时间戳所在的日期。

  • unix_seconds 是一个表示经过 Unix 计时原点的秒数(例如 $e.metadata.event_timestamp.seconds)的整数,或一个包含该值的占位符。
  • timestamp_format 是可选的,是表示时间戳格式的字符串。如果省略,则默认为 %F %T。您可以使用日期时间格式字符串或以下任一时间粒度来指定格式:SECONDMINUTEHOURDATEWEEKMONTHYEAR。 如需了解更多格式设置选项,请参阅设置日期和时间部分的元素格式
  • time_zone 是可选的,是表示时区的字符串。如果省略,则默认值为 GMT。您可以使用字符串字面量来指定时区。选项如下:
    • IANA 时区 (TZ) 数据库名称,例如 America/Los_Angeles。如需了解详情,请参阅维基百科上的 tz 数据库时区列表
    • 相对于世界协调时间 (UTC) 的时区偏离值,格式为 (+|-)H[H][:M[M]],例如“-08:00”。

以下是有效 time_zone 说明符的示例,您可以将其作为第二个实参传递给时间提取函数:

"America/Los_Angeles", or "-08:00". ("PST" is not supported)
"America/New_York", or "-05:00". ("EST" is not supported)
"Europe/London"
"UTC"
"GMT"

形参数据类型

INTSTRINGSTRING

返回类型

STRING

代码示例

示例 1

在此示例中,省略了 time_zone 实参,因此默认值为 GMT

$ts = $e.metadata.collected_timestamp.seconds

timestamp.get_timestamp($ts) = "2024-02-22 10:43:51"
示例 2

以下示例使用字符串字面量来定义 time_zone

$ts = $e.metadata.collected_timestamp.seconds

timestamp.get_timestamp($ts, "%F %T", "America/Los_Angeles") = "2024-02-22 10:43:51"
示例 3

以下示例使用字符串字面量来定义 timestamp_format

$ts = $e.metadata.collected_timestamp.seconds

timestamp.get_timestamp($ts, "%Y-%m", "GMT") = "2024-02"
示例 4

此示例将 Unix 时间戳格式化为精确到秒的字符串。

timestamp.get_timestamp(1708598631, "SECOND", "GMT") = "2024-02-22 10:43:51"
示例 5

此示例将 Unix 时间戳格式化为分钟粒度的字符串。

timestamp.get_timestamp(1708598631, "MINUTE", "GMT") = "2024-02-22 10:43"
示例 6

此示例将 Unix 时间戳格式化为小时粒度的字符串。

timestamp.get_timestamp(1708598631, "HOUR", "GMT") = "2024-02-22 10"
示例 7

此示例将 Unix 时间戳格式化为以天为粒度的字符串。

timestamp.get_timestamp(1708598631, "DATE", "GMT") = "2024-02-22"
示例 8

此示例将 Unix 时间戳格式化为字符串,粒度为周。

timestamp.get_timestamp(1708598631, "WEEK", "GMT") = "2024-02-18"
示例 9

此示例将 Unix 时间戳格式化为字符串,精确到月份。

timestamp.get_timestamp(1708598631, "MONTH", "GMT") = "2024-02"
示例 10

此示例将 UNIX 时间戳格式化为字符串,精确到年。

timestamp.get_timestamp(1708598631, "YEAR", "GMT") = "2024"