

# 监控具有租户隔离功能的 Lambda 函数
<a name="tenant-isolation-monitor"></a>

您可以使用 Amazon CloudWatch、AWS X-Ray 来监控租户隔离的 Lambda 函数，并且可以通过[使用遥测 API](telemetry-api.md) 访问扩展程序的实时遥测数据来进行此监控。

## 了解租户隔离模式的日志记录
<a name="tenant-isolation-logging"></a>

对于使用租户隔离的函数，当您[启用 JSON 日志记录](monitoring-cloudwatchlogs-logformat.md)时，Lambda 会将租户标识符自动包含在[函数日志](monitoring-logs.md)中，这样可以更轻松地监控和调试租户特定的问题。Lambda 为每个执行环境创建单独的 [CloudWatch 日志流](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html)。您可以使用 CloudWatch Logs Insights 通过依据租户标识符进行筛选来查找属于特定租户的日志流：

```
fields @logStream, @message
| filter tenantId=='BlueTenant' or record.tenantId=='BlueTenant'
| stats count() as logCount by @logStream
| sort @timestamp desc
```

您还可以使用此参数在所有日志流中检索租户特定的日志：

```
fields @message
| filter tenantId=='BlueTenant' or record.tenantId=='BlueTenant'
| limit 1000
```

`tenantId` 属性会被包含在平台事件（例如 `platform.start` 和 `platform.report`）以及您在函数代码中打印的自定义日志，如下所示：

```
{
    "time": "2025-10-13T19:48:06.990Z",
    "type": "platform.start",
    "record": {
        "requestId": "a0f40320-b43c-44b3-91bf-d5b5240a1bed",
        "functionArn": "arn:aws:lambda:us-east-1:xxxxxx:function:multitenant-function-1",
        "version": "$LATEST",
        "tenantId": "BlueTenant""
    }
}
{
    "timestamp": "2025-10-13T19:48:06.992Z",
    "level": "INFO",
    "requestId": "a0f40320-b43c-44b3-91bf-d5b5240a1bed",
    "tenantId": "BlueTenant"",
    "message": "custom log line1"
}
{
    "timestamp": "2025-10-13T19:48:07.022Z",
    "level": "WARN",
    "requestId": "a0f40320-b43c-44b3-91bf-d5b5240a1bed",
    "tenantId": "BlueTenant"",
    "message": "custom log line2"
}
```