0

我必须使用 boto3 在 python 中编写一个 AWS lambda 函数。该功能的主要目的是检测目录中所有不健康的工作区,并重新启动状态为不健康的工作区。

我创建了一个触发 SNS 并反过来触发 lambda 的 cloudwatch 警报。我不知道如何使用 python 遍历目录中的工作区,这将检测到不健康状态。任何人都可以给我提供 python 中的示例代码,以便我可以编写 lambda。

谢谢

import json
import boto3

client = boto3.client('workspaces')

def lambda_handler(event, context):
    
    statusCode = 200
    print("Alarm activated")
    DirectoryId = "d-966714f11"
    UnhealthyWorkspace = []
    
    if(DirectoryId == 'd-966714f114'):
        response = client.describe_workspaces(
            WorkspaceIds = (should be in an array)
        )

    us = response["Contents"]

    for i in us:
        if(State == 'Unhealthy'):
            print(i)
            UnhealthyWorkspace.append(i)
    

    response1 = client.reboot_workspaces(
        RebootWorkspaceRequests=[
            {
                'WorkspaceId' : UnhealthyWorkspace
            }
        ]
    )

4

1 回答 1

0

用于describe_workspaces()检索所有工作区的列表。

然后,遍历工作区列表并检查:State = 'UNHEALTHY'

于 2021-07-08T23:33:59.453 回答