

# テナント分離を使用した Lambda 関数のモニタリング
<a name="tenant-isolation-monitor"></a>

テナント分離された Lambda 関数は、Amazon CloudWatch、AWS X-Ray、および [Telemetry API](telemetry-api.md) を使用して拡張機能のリアルタイムテレメトリデータにアクセスすることでモニタリングできます。

## テナント分離モードのログ記録について
<a name="tenant-isolation-logging"></a>

テナント分離を使用する関数の場合、Lambda は [JSON ログ記録を有効にする](monitoring-cloudwatchlogs-logformat.md)と[関数ログ](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"
}
```