Exemplos de uso da CLI com o Monitor de Internet do Amazon CloudWatch
Esta seção inclui exemplos de uso da AWS Command Line Interface com operações do Monitor de Internet do Amazon CloudWatch.
Antes de começar, certifique-se de fazer login para usar a AWS CLI com a mesma conta da AWS que tem as nuvens privadas virtuais (VPCs) da Amazon, os Network Load Balancers, as distribuições do Amazon CloudFront ou os diretórios do Amazon WorkSpaces que você deseja monitorar. O Monitor de Internet não é compatível com o acesso a recursos em várias contas. Para obter informações sobre como usar a AWS CLI, consulte a Referência de comandos da AWS CLI. Para obter mais informações sobre o uso de ações de API com o Amazon Monitor de Internet do Amazon CloudWatch, consulte o Amazon CloudWatch Internet Monitor API Reference Guide (Guia de referência da API do Monitor de Internet do Amazon CloudWatch).
Tópicos
Criar um monitor
Ao criar um monitor no Monitor de Internet, você fornece um nome e associa recursos ao monitor para mostrar onde está o tráfego de Internet da aplicação. Você especifica um percentual de tráfego que define quanto do tráfego da sua aplicação é monitorado. Isso também determina o número de cidades-redes, ou seja, locais de clientes e ASNs, geralmente provedores de serviços de Internet ou ISPs, que são monitorados. Também é possível optar por definir um limite para o número máximo de cidades-redes a serem monitoradas para os recursos da sua aplicação para ajudar a controlar suas despesas. Para ter mais informações, consulte Escolher um limite máximo para redes urbanas.
Por fim, é possível escolher se deseja publicar todas as medições da Internet para sua aplicação no Amazon S3. As medições da Internet para as 500 principais cidades-redes (por volume de tráfego) são publicadas automaticamente no CloudWatch Logs pelo Monitor de Internet, mas também é possível optar por publicar todas as medições no S3.
Para criar um monitor com a AWS CLI, use o comando create-monitor
. O comando a seguir cria um monitor que monitora 100% do tráfego, mas define um limite máximo de 10.000 cidades-redes, adiciona um recurso de VPC e opta por publicar medições da Internet no Amazon S3.
nota
O Monitor de Internet publica no CloudWatch Logs medições da Internet a cada cinco minutos para as 500 principais cidades-redes (locais de clientes e ASNs, geralmente provedores de serviços de Internet ou ISPs) que enviem tráfego para cada monitor. Opcionalmente, é possível optar por publicar medições da Internet para todas as cidades-redes monitoradas (até o limite de serviço de 500.000 cidades-redes) em um bucket do Amazon S3. Para ter mais informações, consulte Publicação de medições da internet para o Amazon S3 no Monitor de Internet do Amazon CloudWatch.
aws internetmonitor --create-monitor monitor-name "TestMonitor" \ --traffic-percentage-to-monitor 100 \ --max-city-networks-to-monitor 10000 \ --resources "arn:aws:ec2:us-east-1:111122223333:vpc/vpc-11223344556677889" \ --internet-measurements-log-delivery S3Config="{BucketName=amzn-s3-demo-bucket,LogDeliveryStatus=ENABLED}"
{ "Arn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor", "Status": "ACTIVE" }
nota
Não é possível alterar o nome de um monitor.
Visualizar detalhes do monitor
Para visualizar informações sobre um monitor com a AWS CLI, você usa o comando get-monitor
.
aws internetmonitor get-monitor --monitor-name "TestMonitor"
{ "ClientLocationType": "city", "CreatedAt": "2022-09-22T19:27:47Z", "ModifiedAt": "2022-09-22T19:28:30Z", "MonitorArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor", "MonitorName": "TestMonitor", "ProcessingStatus": "OK", "ProcessingStatusInfo": "The monitor is actively processing data", "Resources": [ "arn:aws:ec2:us-east-1:111122223333:vpc/vpc-11223344556677889" ], "MaxCityNetworksToMonitor": 10000, "Status": "ACTIVE" }
Listar eventos de integridade
Quando a performance do tráfego de Internet da aplicação se degrada, o Monitor de Internet cria eventos de integridade no monitor. Para ver uma lista dos eventos de integridade atuais com a AWS CLI, use o comando list-health-events
aws internetmonitor list-health-events --monitor-name "TestMonitor"
{ "HealthEvents": [ { "EventId": "2022-06-20T01-05-05Z/latency", "Status": "RESOLVED", "EndedAt": "2022-06-20T01:15:14Z", "ServiceLocations": [ { "Name": "us-east-1" } ], "PercentOfTotalTrafficImpacted": 1.21, "ClientLocations": [ { "City": "Lockport", "PercentOfClientLocationImpacted": 60.370000000000005, "PercentOfTotalTraffic": 2.01, "Country": "United States", "Longitude": -78.6913, "AutonomousSystemNumber": 26101, "Latitude": 43.1721, "Subdivision": "New York", "NetworkName": "YAHOO-BF1" } ], "StartedAt": "2022-06-20T01:05:05Z", "ImpactType": "PERFORMANCE", "EventArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor/health-event/2022-06-20T01-05-05Z/latency" }, { "EventId": "2022-06-20T01-17-56Z/latency", "Status": "RESOLVED", "EndedAt": "2022-06-20T01:30:23Z", "ServiceLocations": [ { "Name": "us-east-1" } ], "PercentOfTotalTrafficImpacted": 1.29, "ClientLocations": [ { "City": "Toronto", "PercentOfClientLocationImpacted": 75.32, "PercentOfTotalTraffic": 1.05, "Country": "Canada", "Longitude": -79.3623, "AutonomousSystemNumber": 14061, "Latitude": 43.6547, "Subdivision": "Ontario", "CausedBy": { "Status": "ACTIVE", "Networks": [ { "AutonomousSystemNumber": 16509, "NetworkName": "Amazon.com" } ], "NetworkEventType": "AWS" }, "NetworkName": "DIGITALOCEAN-ASN" }, { "City": "Lockport", "PercentOfClientLocationImpacted": 22.91, "PercentOfTotalTraffic": 2.01, "Country": "United States", "Longitude": -78.6913, "AutonomousSystemNumber": 26101, "Latitude": 43.1721, "Subdivision": "New York", "NetworkName": "YAHOO-BF1" }, { "City": "Hangzhou", "PercentOfClientLocationImpacted": 2.88, "PercentOfTotalTraffic": 0.7799999999999999, "Country": "China", "Longitude": 120.1612, "AutonomousSystemNumber": 37963, "Latitude": 30.2994, "Subdivision": "Zhejiang", "NetworkName": "Hangzhou Alibaba Advertising Co.,Ltd." } ], "StartedAt": "2022-06-20T01:17:56Z", "ImpactType": "PERFORMANCE", "EventArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor/health-event/2022-06-20T01-17-56Z/latency" }, { "EventId": "2022-06-20T01-34-20Z/latency", "Status": "RESOLVED", "EndedAt": "2022-06-20T01:35:04Z", "ServiceLocations": [ { "Name": "us-east-1" } ], "PercentOfTotalTrafficImpacted": 1.15, "ClientLocations": [ { "City": "Lockport", "PercentOfClientLocationImpacted": 39.45, "PercentOfTotalTraffic": 2.01, "Country": "United States", "Longitude": -78.6913, "AutonomousSystemNumber": 26101, "Latitude": 43.1721, "Subdivision": "New York", "NetworkName": "YAHOO-BF1" }, { "City": "Toronto", "PercentOfClientLocationImpacted": 29.770000000000003, "PercentOfTotalTraffic": 1.05, "Country": "Canada", "Longitude": -79.3623, "AutonomousSystemNumber": 14061, "Latitude": 43.6547, "Subdivision": "Ontario", "CausedBy": { "Status": "ACTIVE", "Networks": [ { "AutonomousSystemNumber": 16509, "NetworkName": "Amazon.com" } ], "NetworkEventType": "AWS" }, "NetworkName": "DIGITALOCEAN-ASN" }, { "City": "Hangzhou", "PercentOfClientLocationImpacted": 2.88, "PercentOfTotalTraffic": 0.7799999999999999, "Country": "China", "Longitude": 120.1612, "AutonomousSystemNumber": 37963, "Latitude": 30.2994, "Subdivision": "Zhejiang", "NetworkName": "Hangzhou Alibaba Advertising Co.,Ltd." } ], "StartedAt": "2022-06-20T01:34:20Z", "ImpactType": "PERFORMANCE", "EventArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor/health-event/2022-06-20T01-34-20Z/latency" } ] }
Visualizar evento de integridade específico
Para ver informações mais detalhadas sobre um evento de integridade específico com a CLI, execute o comando get-health-event
com o nome do monitor e o ID do evento de integridade.
aws internetmonitor get-monitor --monitor-name "TestMonitor" --event-id "health-event/TestMonitor/2021-06-03T01:02:03Z/latency"
{ "EventId": "2022-06-20T01-34-20Z/latency", "Status": "RESOLVED", "EndedAt": "2022-06-20T01:35:04Z", "ServiceLocations": [ { "Name": "us-east-1" } ], "EventArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor/health-event/2022-06-20T01-34-20Z/latency", "LastUpdatedAt": "2022-06-20T01:35:04Z", "ClientLocations": [ { "City": "Lockport", "PercentOfClientLocationImpacted": 39.45, "PercentOfTotalTraffic": 2.01, "Country": "United States", "Longitude": -78.6913, "AutonomousSystemNumber": 26101, "Latitude": 43.1721, "Subdivision": "New York", "NetworkName": "YAHOO-BF1" }, { "City": "Toronto", "PercentOfClientLocationImpacted": 29.770000000000003, "PercentOfTotalTraffic": 1.05, "Country": "Canada", "Longitude": -79.3623, "AutonomousSystemNumber": 14061, "Latitude": 43.6547, "Subdivision": "Ontario", "CausedBy": { "Status": "ACTIVE", "Networks": [ { "AutonomousSystemNumber": 16509, "NetworkName": "Amazon.com" } ], "NetworkEventType": "AWS" }, "NetworkName": "DIGITALOCEAN-ASN" }, { "City": "Shenzhen", "PercentOfClientLocationImpacted": 4.07, "PercentOfTotalTraffic": 0.61, "Country": "China", "Longitude": 114.0683, "AutonomousSystemNumber": 37963, "Latitude": 22.5455, "Subdivision": "Guangdong", "NetworkName": "Hangzhou Alibaba Advertising Co.,Ltd." }, { "City": "Hangzhou", "PercentOfClientLocationImpacted": 2.88, "PercentOfTotalTraffic": 0.7799999999999999, "Country": "China", "Longitude": 120.1612, "AutonomousSystemNumber": 37963, "Latitude": 30.2994, "Subdivision": "Zhejiang", "NetworkName": "Hangzhou Alibaba Advertising Co.,Ltd." } ], "StartedAt": "2022-06-20T01:34:20Z", "ImpactType": "PERFORMANCE", "PercentOfTotalTrafficImpacted": 1.15 }
Visualizar lista de monitores
Para ver uma lista de todos os monitores em sua conta com a CLI, execute o comando list-monitors
.
aws internetmonitor list-monitors
{ "Monitors": [ { "MonitorName": "TestMonitor", "ProcessingStatus": "OK", "Status": "ACTIVE" } ], "NextToken": " zase12" }
Editar monitor
Para atualizar as informações sobre seu monitor usando a CLI, use o comando update-monitor
e especifique o nome do monitor a ser atualizado. Por exemplo, você pode atualizar o percentual de tráfego a ser monitorado, o limite do número máximo de redes urbanas a serem monitoradas, adicionar ou remover os recursos que o Monitor de Internet usa para monitorar o tráfego e alterar o status do monitor de ACTIVE
para INACTIVE
, ou vice-versa. Observe que não é possível alterar o nome do monitor.
A resposta para uma chamada a update-monitor
retorna apenas o MonitorArn
e o Status
.
O exemplo a seguir mostra como usar o comando update-monitor
para alterar o número máximo de cidades-rede a monitorar para 50000
:
aws internetmonitor update-monitor --monitor-name "TestMonitor" --max-city-networks-to-monitor 50000
{ "MonitorArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor", "Status": " ACTIVE " }
O exemplo a seguir mostra como adicionar e remover um recurso:
aws internetmonitor update-monitor --monitor-name "TestMonitor" \ --resources-to-add "arn:aws:ec2:us-east-1:111122223333:vpc/vpc-11223344556677889" \ --resources-to-remove "arn:aws:ec2:us-east-1:111122223333:vpc/vpc-2222444455556666"
{ "MonitorArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor", "Status": "ACTIVE" }
O exemplo a seguir mostra como usar o comando update-monitor
para alterar o status do monitor para INACTIVE
:
aws internetmonitor update-monitor --monitor-name "TestMonitor" --status "INACTIVE"
{ "MonitorArn": "arn:aws:internetmonitor:us-east-1:111122223333:monitor/TestMonitor", "Status": "INACTIVE" }
Excluir um monitor
Você pode excluir um monitor com a CLI usando o comando delete-monitor
. Primeiro, você deve configurar o monitor para ficar inativo. Para fazer isso, use o comando update-monitor
para alterar o status para INACTIVE
. Confirme se o monitor está inativo usando o comando get-monitor
e verificando o status.
Quando o status do monitor for INACTIVE
, você poderá usar a CLI para executar o comando delete-monitor
para excluir o monitor. A resposta para uma chamada delete-monitor
bem-sucedida é vazia.
aws internetmonitor delete-monitor --monitor-name "TestMonitor"
{}