本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
布尔值、比较、数值、日期时间和其他函数
CloudWatch Logs Insights 支持查询中的许多其他操作和功能,如以下各节所述。
算术运算符
算术运算接受数值数据类型作为参数并返回数值结果。在 filter
和 fields
命令中使用算术运算并将其用作其他函数的参数。
操作 | 描述 |
---|---|
|
加 |
|
减 |
|
乘 |
|
除 |
|
幂( |
|
余额或模数( |
布尔运算符
使用布尔运算符 and
、or
和 not
。
注意
仅在返回 TRUE 或 FALSE 值的函数中使用布尔运算符。
比较运算符
比较运算接受所有数据类型作为参数,并返回布尔值结果。在 filter
命令中使用比较运算并将其用作其他函数的参数。
运算符 | 描述 |
---|---|
|
Equal |
|
Not equal |
|
Less than |
|
Greater than |
|
小于或等于 |
|
大于或等于 |
数值运算符
数值运算接受数值数据类型作为参数并返回数值结果。在 filter
和 fields
命令中使用数值运算并将其用作其他函数的参数。
操作 | 结果类型 | 描述 |
---|---|---|
|
number |
绝对值 |
|
number |
舍入到上限(大于 |
|
number |
舍入到下限(小于 |
|
number |
返回最大值 |
|
number |
返回最小值 |
|
number |
自然对数 |
|
number |
平方根 |
日期时间函数
日期时间函数
在 fields
和 filter
命令中使用日期时间函数并将其用作其他函数的参数。使用这些函数为使用聚合函数的查询创建时间存储桶。使用包括一个数字的时间段,m
表示分钟,h
表示小时。例如,10m
为 10 分钟,1h
为 1 小时。下表包含可在查询命令中使用的不同日期时间函数列表。该表列出了每个函数的结果类型,并包含对每个函数的描述。
提示
在创建查询命令时,您可以使用时间间隔选择器选择要查询的时间段。例如,您可以设置 5 到 30 分钟的时间间隔;1、3 和 12 小时间隔;或者自定义时间范围。您还可以设置特定日期之间的时间段。
函数 | 结果类型 | 描述 |
---|---|---|
|
Timestamp |
将 您可以使用它将某个查询中的多个日志条目分为一组。以下示例返回每小时的异常数量。
|
|
Timestamp |
将时间戳截断到指定的时间段。例如, |
|
Timestamp |
将时间戳向上舍入到指定的时间段,然后截断。例如, |
|
Timestamp |
将输入字段解释为自 Unix 纪元以来的毫秒数并将其转换为时间戳。 |
|
number |
将在命名字段中找到的时间戳转换为表示自 Unix 纪元以来毫秒数的数字。例如, |
注意
目前, CloudWatch Logs Insights 不支持筛选带有人类可读时间戳的日志。
常见函数
常见函数
在 fields
和 filter
命令中使用常规函数并将其用作其他函数的参数。
函数 | 结果类型 | 描述 |
---|---|---|
|
布尔值 |
如果字段存在,则返回 |
|
LogField |
返回列表中的第一个非 null 值 |
IP 地址字符串函数
IP 地址字符串函数
在 filter
和 fields
命令中使用 IP 地址字符串函数并将其用作其他函数的参数。
函数 | 结果类型 | 描述 |
---|---|---|
|
布尔值 |
如果字段是有效的 IPv4 或 IPv6 地址,则返回 |
|
布尔值 |
如果字段是有效的 IPv4 地址,则返回 |
|
布尔值 |
如果字段是有效的 IPv6 地址,则返回 |
|
布尔值 |
如果字段是指定的 v4 或 v6 子网中有效的 IPv4 或 IPv6 地址,则返回 |
|
布尔值 |
如果字段是指定的 v4 子网中有效的 IPv4 地址,则返回 |
|
布尔值 |
如果字段是指定的 v6 子网中有效的 IPv6 地址,则返回 |
字符串函数
字符串函数
在 fields
和 filter
命令中使用字符串函数并将其用作其他函数的参数。
函数 | 结果类型 | 描述 |
---|---|---|
|
数字 |
如果字段缺失或为空字符串,则返回 |
|
数字 |
如果字段缺失或为空字符串,或只包含空格,则返回 |
|
字符串 |
连结字符串。 |
|
字符串 |
如果函数没有第二个参数,它将删除字符串左侧的空格。如果函数有第二个字符串参数,它将不会删除空格。相反,它会从 |
|
字符串 |
如果函数没有第二个参数,它将删除字符串右侧的空格。如果函数有第二个字符串参数,它将不会删除空格。相反,它会从 |
|
字符串 |
如果函数没有第二个参数,它将删除字符串两端的空格。如果函数有第二个字符串参数,它将不会删除空格。相反,它会从 |
|
number |
返回 Unicode 代码点中字符串的长度。 |
|
字符串 |
将字符串转换为大写。 |
|
字符串 |
将字符串转换为小写。 |
|
字符串 |
返回从由数值参数指定的索引到字符串末尾的子字符串。如果该函数具有二个参数,它包含要检索的子字符串的长度。例如, |
|
字符串 |
将 例如,函数 |
|
number |
如果 |