Amazon Redshift Serverless 的审计日志记录 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon Redshift Serverless 的审计日志记录

导出日志

您可以配置 Amazon Redshift Serverless,以将连接、用户和用户活动日志数据导出到 Amazon CloudWatch Logs 中的日志组。利用 Amazon CloudWatch Logs 可以对日志数据进行实时分析,并使用 CloudWatch 创建告警和查看指标。您可使用 CloudWatch Logs 在持久性存储中存储日志记录。

您可以使用 Amazon Redshift 控制台创建 CloudWatch 警报来跟踪您的指标。有关创建警报的更多信息,请参阅管理警报

要将生成的日志数据导出到 Amazon CloudWatch Logs,必须在控制台上的 Amazon Redshift Serverless 配置设置中选择要导出的相应日志。要执行此操作,您可以在安全和加密下选择命名空间配置设置。

在 CloudWatch 中监控日志事件

在选择要导出的 Redshift 日志后,您可以在 Amazon CloudWatch Logs 中监控事件。系统将自动为 Amazon Redshift Serverless 创建新的日志组,其中 log_type 表示日志类型。

/aws/redshift/<namespace>/<log_type>

创建第一个工作组和命名空间时,default 是命名空间名称。日志组名称则根据您对命名空间的命名而异。

例如,如果您导出连接日志,则日志数据将存储在以下日志组中。

/aws/redshift/default/connectionlog

使用无服务器日志流将日志事件导出到日志组。该行为取决于以下哪些条件为真:

  • 存在包含指定名称的日志组。Redshift 使用现有日志组导出日志数据。您可以使用自动化配置,例如由 Amazon CloudFormation 提供的配置,创建具有预定义日志保留期、指标筛选条件和客户访问的日志组。

  • 具有指定名称的日志组不存在。当在实例的日志中检测到匹配的日志条目时,Amazon Redshift Serverless 会自动在 Amazon CloudWatch Logs 中创建一个新的日志组。日志组使用永不过期的默认日志保留期。要更改日志保留期,请使用 Amazon CloudWatch Logs 控制台、Amazon CLI 或 Amazon CloudWatch Logs API。有关在 CloudWatch Logs 中更改日志留存期的更多信息,请参阅使用日志组和日志流中的更改日志数据留存

要在日志事件中搜索信息,请使用 Amazon CloudWatch Logs 控制台、Amazon CLI 或 Amazon CloudWatch Logs API。有关搜索和筛选日志数据的更多信息,请参阅搜索和筛选日志数据

Amazon Redshift Serverless 指标

Amazon Redshift Serverless 指标分为计算指标以及数据和存储指标,分别属于工作组和命名空间维度集。有关工作组和命名空间的更多信息,请参阅 Amazon Redshift Serverless 工作组和命名空间概览

CloudWatch 计算指标如下所示:

CloudWatch 计算指标
指标名称 单位 描述 维度集
QueriesCompletedPerSecond 查询数 每秒完成的查询数。 {Database、LatencyRange、Workgroup},{LatencyRange、Workgroup}
QueryDuration 微秒 完成查询的平均时间量。 {Database、LatencyRange、Workgroup},{LatencyRange、Workgroup}
QueriesRunning 查询数 一个时间点运行的查询数。 {Database、QueryType、Workgroup},{QueryType、Workgroup}
QueriesQueued 查询数 某个时间点在队列中的查询数。 {Database、QueryType、Workgroup},{QueryType、Workgroup}
DatabaseConnections 连接数 一个时间点与数据库的连接数。 {Database、Workgroup},{Workgroup}
QueryRuntimeBreakdown 毫秒 查询在各个查询阶段运行所花费的总时间。 {Database、Stage、Workgroup},{Stage、Workgroup}
ComputeCapacity RPU 过去 30 分钟内分配的平均计算单位数,向上舍入到最近的整数。 {Workgroup}
ComputeSeconds RPU 秒 过去 30 分钟内消耗的累计计算单位秒数。 {Workgroup}
QueriesSucceeded 查询数 过去 5 分钟内成功的查询数。 {Database、QueryType、Workgroup},{QueryType、Workgroup}
QueriesFailed 查询数 过去 5 分钟内失败的查询数。 {Database、QueryType、Workgroup},{QueryType、Workgroup}
UsageLimitAvailable RPU 小时或 TB

根据 UsageType,UsageLimitAvailable 将返回以下内容:

  • 如果 UsageType 为 SERVERLESS_COMPUTE,则 UsageLimitAvailable 将返回工作组可以在给定限制内查询的剩余 RPU 小时数。

  • 如果 UsageType 是 CROSS_REGION_DATASHARING,则 UsageLimitAvailable 将返回在给定限制下,客户可以扫描的剩余 TB 数量。

{UsageLimitId、UsageType、Workgroup}
UsageLimitConsumed RPU 小时或 TB

根据 UsageType,UsageLimitConsumed 会返回以下内容:

  • 如果 UsageType 为 SERVERLESS_COMPUTE,则 UsageLimitConsumed 将返回工作组在给定限制内已查询的 RPU 小时数。

  • 如果 UsageType 是 CROSS_REGION_DATASHARING,则 UsageLimitConsumed 将返回在给定限制下,客户已经扫描的 TB 数量。

{UsageLimitId、UsageType、Workgroup}

CloudWatch 数据和存储指标如下所示:

CloudWatch 数据和存储指标
指标名称 单位 描述 维度集
TotalTableCount 表的数量 在特定时间点存在的用户表的数量。此总数不包括 Amazon Redshift Spectrum 表。 {Database、Namespace}
DataStorage 兆字节 在磁盘或存储空间中用于 Redshift 数据的兆字节数。 {Namespace}

SnapshotStorage 指标与命名空间和工作组无关。CloudWatch 的 SnapshotStorage 指标如下所示:

CloudWatch SnapshotStorage 指标
指标名称 单位 描述 维度集
SnapshotStorage 兆字节 在磁盘或存储空间中用于快照的兆字节数。 {}

维度集是应用于指标的分组维度。您可以使用这些维度组来指定如何检索统计数据。

下表详细说明了特定指标的维度和维度值:

CloudWatch 维度和维度值
维度 描述和值
DatabaseName 数据库的名称。自定义值。
Latency

可能值如下所示:

  • Short– 不到 10 秒

  • Medium – 在 10 秒到 10 分钟之间

  • Long – 超过 10 分钟

QueryType 可能的值为 INSERTDELETEUPDATEUNLOADLOADSELECTCTASOTHER
stage

查询的执行阶段。可能值如下所示:

  • QueryPlanning:分析和优化 SQL 语句所花的时间。

  • QueryWaiting:在 WLM 队列中等待所花的时间。

  • QueryExecutingRead:执行读取查询所花的时间。

  • QueryExecutingInsert:执行插入查询所花的时间。

  • QueryExecutingDelete:执行删除查询所花的时间。

  • QueryExecutingUpdate:执行更新查询所花的时间。

  • QueryExecutingCtas:执行 create table as 查询所花的时间。

  • QueryExecutingUnload:执行卸载查询所花的时间。

  • QueryExecutingCopy:执行复制查询所花的时间。

  • QueryCommit:提交所花的时间。

Namespace 命名空间的名称。自定义值。
Workgroup 工作组的名称。自定义值。
UsageLimitId 使用限制的标识符。
UsageType

受限制的 Amazon Redshift Serverless 功能。可能值如下所示:

  • SERVERLESS_COMPUTE

  • CROSS_REGION_DATASHARING