NAT 网关(NAT Gateway) 提供会话日志功能,当您为NAT网关创建SNAT条目,有流量经过NAT网关时,SNAT会话将以日志的形式进行记录,便于您进行溯源和监控。
功能介绍
会话日志捕获的SNAT会话以日志的形式写入日志服务(Log Service,简称SLS)中。每条会话日志记录会捕获特定捕获窗口中的特定五元组网络流,捕获周期大约为10分钟,该段时间内会话日志服务会先聚合数据,再投递至已创建的SLS中,此间数据投递延迟在5分钟之内。但是,会话日志服务依据最大能力交付原则,因此您的会话日志记录可能会超出交付时间,并可能因为网络传输延迟或SLS投递处理延时,无法确保100%交付所有会话。
会话日志数据的收集在您网络流量路径之外,因此不会影响NAT网关的网络吞吐量或延迟。
会话日志的格式如下表所示。
字段 |
说明 |
intstance |
NAT网关实例ID。 |
vpc_id |
NAT网关实例所属的专有网络ID。 |
portocol |
流量的IANA协议编号。 更多信息,请参见 Internet 协议编号 。 |
pri_ip |
源地址。 |
pri_port |
源端口。 |
pub_ip |
目的地址。 |
pub_port |
目的端口。 |
nat_ip |
|
nat_port |
|
bytes_from_pub |
|
pkts_from_pub |
|
bytes_from_vpc |
来自VPC的数据包大小。 |
pkts_from_vpc |
来自VPC的数据包数量。 |
start_time |
会话日志建立时间。 |
end_time |
会话日志停止时间。 |
功能计费
会话日志不收取日志生成费,但会话日志将捕获的SNAT会话存储在阿里云日志服务中,日志服务收取相应的存储和检索费用。更多信息,请参见 日志服务计费 。
使用限制
-
按规格计费的NAT网关实例不支持开启会话日志服务。
-
NAT网关实例需要与创建的日志服务在同一地域。
配置流程
-
创建Project
您需要为日志服务创建一个Project。具体操作,请参见 创建项目Project 。
-
创建Logstore
Logstore是Project的资源集合,Logstore中的所有数据都来自于同一个数据源。创建Project后,您需要创建Logstore。具体操作,请参见 创建Logstore 。
-
启动会话日志
启动会话日志功能,捕获SNAT会话,并将SNAT会话投递至目标日志服务。具体操作,请参见 启动会话日志 。
启动会话日志
-
登录 NAT网关管理控制台 。
-
在顶部菜单栏处,选择NAT网关所属的地域。
-
在左侧导航栏选择 公网NAT网关 或 VPC NAT网关 。
-
在 公网NAT网关 或 VPC NAT网关 页面,找到目标NAT网关实例,然后单击NAT网关实例ID。
-
在NAT网关实详情页面,选择
页签,然后单击 启动会话日志 。 -
在 启用会话日志 对话框中,根据以下内容配置信息,然后单击 确定 。
配置
说明
NAT实例ID|名称
显示当前NAT网关实例的ID和名称。
NAT实例所属地域
显示当前NAT网关实例所属的地域。
日志服务Project
选择管理捕获流量的项目(Project)的类型:
-
选择现有 Project :从已有的项目中选择存储捕获流量的项目。
-
新建 Project :新建一个用于存储捕获流量的项目。
日志服务Logstore
选择存储捕获流量的日志库(Logstore)的类型:
-
选择现有 Logstore :从已有的项目中选择存储捕获流量的日志库。
-
新建 Logstore :新建一个用于存储捕获流量的日志库。
-
查看会话日志
-
登录 NAT网关管理控制台 。
-
在顶部菜单栏处,选择NAT网关所属的地域。
-
在左侧导航栏选择 公网NAT网关 或 VPC NAT网关 。
-
在 公网NAT网关 或 VPC NAT网关 页面,找到目标NAT网关实例,然后单击NAT网关实例ID。
-
在NAT网关实详情页面,选择
页签, 找到目标会话日志,查看会话日志相关信息。列表项
说明
会话日志状态
会话日志的启动状态,启动会话日志后显示为 已启动 。
当您启动会话日志后,系统会自动为您创建
AliyunServiceRolePolicyForNatgwLogDelivery
服务关联角色,向您创建的LogStore进行授权,从而完成数据的投递。更多信息,请参见 AliyunServiceRolePolicyForNatgwLogDelivery 。投递状态
会话日志的投递状态。取值:
-
成功 :会话日志成功投递至日志服务。
-
修改中 :中间状态,表示会话日志正在修改或启动中。
-
失败 :会话日志无法投递至日志服务。相关错误信息,请参见 投递错误码 。
投递类型
会话日志投递的目标类型,取值: sls 。
目标信息
在 目标信息 列单击日志库链接,跳转至日志服务控制台,在查看和分析日志之前,您需要为会话日志投递的Logstore中手动创建索引。更多操作,请参见 创建索引 和 查询和分析日志 。
-
停止会话日志
-
登录 NAT网关管理控制台 。
-
在顶部菜单栏处,选择NAT网关所属的地域。
-
在左侧导航栏选择 公网NAT网关 或 VPC NAT网关 。
-
在 公网NAT网关 或 VPC NAT网关 页面,找到目标NAT网关实例,然后单击NAT网关实例ID。
-
在NAT网关实详情页面,选择
页签,找到目标会话日志,然后在 操作 列,单击 停止 。 -
然后在弹出的对话框中单击 确定 。
说明停止会话日志后不会删除已完成投递的会话日志数据。
投递错误码
错误码 |
说明 |
ProjectNotExist |
会话日志投递的目标Project不存在。 |
LogStoreNotExist |
会话日志投递的目标LogStore不存在。 |
ProjectForbidden |
您创建的Project被禁用,可能由于欠费导致。 |
InvalidAccessKeyId |
启动会话日志时,未创建服务关联角色向LogStore授权。 |
Unauthorized |
启动会话日志时,未创建服务关联角色向LogStore授权。 |
UnavaliableTarget |
遇到Unauthorized、ProjectNotExist、LogStoreNotExist、ProjectForbidden错误时,分发会禁止投递至目标5分钟。在5分钟禁用到期后,如果有新的数据需要投递,会投递一次至LogStore做探测,如果投递不成功继续禁用下一个5分钟,如果投递成功则恢复对LogStore的正常投递。 |
WriteQuotaExceed |
您的Project写入流量配额超过限制,默认一个Project下所有LogStore的写入限制为30 GB/min。 |
ShardWriteQuotaExceed |
分发的日志流量较大,而您LogStore的Shard不足,建议您分裂更多Shard支撑更大写入流量。具体操作,请参见 管理Shard 。 |