

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 的 CloudWatch Network Monitoring 範例 AWS CLI
<a name="cli_networkmonitor_code_examples"></a>

下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 CloudWatch Network Monitoring 執行動作和實作常見案例。

*Actions* 是大型程式的程式碼摘錄，必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數，但您可以在其相關情境中查看內容中的動作。

每個範例均包含完整原始碼的連結，您可在連結中找到如何設定和執行內容中程式碼的相關指示。

**Topics**
+ [動作](#actions)

## 動作
<a name="actions"></a>

### `create-monitor`
<a name="networkmonitor_CreateMonitor_cli_topic"></a>

以下程式碼範例顯示如何使用 `create-monitor`。

**AWS CLI**  
**範例 1：使用彙總期間建立網路監視器**  
下列 `create-monitor` 範例會建立名為 `Example_NetworkMonitor` 的監視器，並將 `aggregationPeriod` 設定為 `30` 秒。監視器的初始 `state` 將是 `INACTIVE`，因為沒有與其相關聯的探針。只有在新增探針時，狀態才會變更為 `ACTIVE`。您可以使用 [update-monitor](https://docs.aws.amazon.com/cli/latest/reference/networkmonitor/update-monitor.html) 或 [create-probe](https://docs.aws.amazon.com/cli/latest/reference/networkmonitor/create-probe.html) 命令，將探針新增至此監視器。  

```
aws networkmonitor create-monitor \
     --monitor-name Example_NetworkMonitor \
     --aggregation-period 30
```
輸出：  

```
{
    "monitorArn": "arn:aws:networkmonitor:region:111122223333:monitor/Example_NetworkMonitor",
    "monitorName": "Example_NetworkMonitor",
    "state": "INACTIVE",
    "aggregationPeriod": 30,
    "tags": {}
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
**範例 2：使用 TCP 建立具有探針的網路監視器，並包含標籤**  
下列 `create-monitor` 範例建立名為 `Example_NetworkMonitor` 的監視器。命令也會建立一個使用 `ICMP` 通訊協定並包含標籤的探針。由於請求中未傳遞任何 `aggregationPeriod`，因此將 `60` 秒設定為預設值。具有探針的監視器的 `state`，直到監視器是 `ACTIVE` 之前都是 `PENDING`。這可能需要幾分鐘時間，此時 `state` 會變更為 `ACTIVE`，而且您可以開始檢視 CloudWatch 指標。  

```
aws networkmonitor create-monitor \
    --monitor-name Example_NetworkMonitor \
    --probes sourceArn=arn:aws:ec2:region:111122223333:subnet/subnet-id,destination=10.0.0.100,destinationPort=80,protocol=TCP,packetSize=56,probeTags={Name=Probe1} \
    --tags Monitor=Monitor1
```
輸出：  

```
{
    "monitorArn": "arn:aws:networkmonitor:region111122223333:monitor/Example_NetworkMonitor",
    "monitorName": "Example_NetworkMonitor",
    "state": "PENDING",
    "aggregationPeriod": 60,
    "tags": {
        "Monitor": "Monitor1"
    }
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
**範例 3：使用 ICMP 建立具有探針查的網路監視器，並包含標籤**  
下列 `create-monitor` 範例會建立名為 `Example_NetworkMonitor` 的監視器，其中 `aggregationPeriod` 為 `30` 秒。命令也會建立一個使用 `ICMP` 通訊協定並包含標籤的探針。由於請求中未傳遞任何 `aggregationPeriod`，因此將 `60` 秒設定為預設值。具有探針的監視器的 `state`，直到監視器是 `ACTIVE` 之前都是 `PENDING`。這可能需要幾分鐘時間，此時 `state` 會變更為 `ACTIVE`，而且您可以開始檢視 CloudWatch 指標。  

```
aws networkmonitor create-monitor \
     --monitor-name Example_NetworkMonitor \
     --aggregation-period 30 \
     --probes sourceArn=arn:aws:ec2:region111122223333:subnet/subnet-id,destination=10.0.0.100,protocol=ICMP,packetSize=56,probeTags={Name=Probe1} \
     --tags Monitor=Monitor1
```
輸出：  

```
{
    "monitorArn": "arn:aws:networkmonitor:region:111122223333:monitor/Example_NetworkMonitor",
    "monitorName": "Example_NetworkMonitor",
    "state": "PENDING",
    "aggregationPeriod": 30,
    "tags": {
        "Monitor": "Monitor1"
    }
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CreateMonitor](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/create-monitor.html)。

### `create-probe`
<a name="networkmonitor_CreateProbe_cli_topic"></a>

以下程式碼範例顯示如何使用 `create-probe`。

**AWS CLI**  
**範例 1：建立使用 TCP 的探針，並將其新增至網路監視器**  
下列 `create-probe` 範例建立一個使用 `TCP` `protocol` 的探針，並將探針新增至名為 `Example_NetworkMonitor` 的監視器。建立後，具有探針的監視器的 `state` 直到監視器是 `ACTIVE` 之前，都是 `PENDING`。這可能需要幾分鐘時間，此時狀態會變更為 `ACTIVE`，而且您可以開始檢視 CloudWatch 指標。  

```
aws networkmonitor create-probe \
    --monitor-name Example_NetworkMonitor \
    --probe sourceArn=arn:aws:ec2:region:111122223333:subnet/subnet-id,destination=10.0.0.100,destinationPort=80,protocol=TCP,packetSize=56,tags={Name=Probe1}
```
輸出：  

```
{
    "probeId": "probe-12345",
    "probeArn": "arn:aws:networkmonitor:region:111122223333:probe/probe-12345",
    "destination": "10.0.0.100",
    "destinationPort": 80,
    "packetSize": 56,
    "addressFamily": "IPV4",
    "vpcId": "vpc-12345",
    "state": "PENDING",
    "createdAt": "2024-03-29T12:41:57.314000-04:00",
    "modifiedAt": "2024-03-29T12:41:57.314000-04:00",
    "tags": {
        "Name": "Probe1"
    }
}
```
**範例 2：建立使用 ICMP 之探針的探針，並將其新增至網路監視器**  
下列 `create-probe` 範例建立一個使用 `ICMP` `protocol` 的探針，並將探針新增至名為 `Example_NetworkMonitor` 的監視器。建立後，具有探針的監視器的 `state` 直到監視器是 `ACTIVE` 之前，都是 `PENDING`。這可能需要幾分鐘時間，此時狀態會變更為 `ACTIVE`，而且您可以開始檢視 CloudWatch 指標。  

```
aws networkmonitor create-probe \
    --monitor-name Example_NetworkMonitor \
    --probe sourceArn=arn:aws:ec2:region:012345678910:subnet/subnet-id,destination=10.0.0.100,protocol=ICMP,packetSize=56,tags={Name=Probe1}
```
輸出：  

```
{
    "probeId": "probe-12345",
    "probeArn": "arn:aws:networkmonitor:region:111122223333:probe/probe-12345",
    "destination": "10.0.0.100",
    "packetSize": 56,
    "addressFamily": "IPV4",
    "vpcId": "vpc-12345",
    "state": "PENDING",
    "createdAt": "2024-03-29T12:44:02.452000-04:00",
    "modifiedAt": "2024-03-29T12:44:02.452000-04:00",
    "tags": {
        "Name": "Probe1"
    }
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CreateProbe](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/create-probe.html)。

### `delete-monitor`
<a name="networkmonitor_DeleteMonitor_cli_topic"></a>

以下程式碼範例顯示如何使用 `delete-monitor`。

**AWS CLI**  
**刪除監視器**  
以下 `delete-monitor` 範例會刪除名為 `Example_NetworkMonitor` 的監視器。  

```
aws networkmonitor delete-monitor \
    --monitor-name Example_NetworkMonitor
```
此命令不會產生輸出。  
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteMonitor](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/delete-monitor.html)。

### `delete-probe`
<a name="networkmonitor_DeleteProbe_cli_topic"></a>

以下程式碼範例顯示如何使用 `delete-probe`。

**AWS CLI**  
**刪除探針**  
下列 `delete-probe` 範例會從名為 `Example_NetworkMonitor` 的網路監視器中刪除 ID 為 `probe-12345` 的探針。  

```
aws networkmonitor delete-probe \
    --monitor-name Example_NetworkMonitor \
    --probe-id probe-12345
```
此命令不會產生輸出。  
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteProbe](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/delete-probe.html)。

### `get-monitor`
<a name="networkmonitor_GetMonitor_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-monitor`。

**AWS CLI**  
**取得監視器資訊**  
下列 `get-monitor` 範例取得名為 `Example_NetworkMonitor` 的監視器相關資訊。  

```
aws networkmonitor get-monitor \
    --monitor-name Example_NetworkMonitor
```
輸出：  

```
{
    "monitorArn": "arn:aws:networkmonitor:region:012345678910:monitor/Example_NetworkMonitor",
    "monitorName": "Example_NetworkMonitor",
    "state": "ACTIVE",
    "aggregationPeriod": 60,
    "tags": {},
    "probes": [],
    "createdAt": "2024-04-01T17:58:07.211000-04:00",
    "modifiedAt": "2024-04-01T17:58:07.211000-04:00"
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetMonitor](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/get-monitor.html)。

### `get-probe`
<a name="networkmonitor_GetProbe_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-probe`。

**AWS CLI**  
**檢視探針詳細資訊**  
下列 `get-probe` 範例會傳回具有與名為 `Example_NetworkMonitor` 之監視器相關聯的 `probeID` `probe-12345` 的探針詳細資訊。  

```
aws networkmonitor get-probe \
    --monitor-name Example_NetworkMonitor \
    --probe-id probe-12345
```
輸出：  

```
{
    "probeId": "probe-12345",
    "probeArn": "arn:aws:networkmonitor:region:012345678910:probe/probe-12345",
    "sourceArn": "arn:aws:ec2:region:012345678910:subnet/subnet-12345",
    "destination": "10.0.0.100",
    "destinationPort": 80,
    "protocol": "TCP",
    "packetSize": 56,
    "addressFamily": "IPV4",
    "vpcId": "vpc-12345",
    "state": "ACTIVE",
    "createdAt": "2024-03-29T12:41:57.314000-04:00",
    "modifiedAt": "2024-03-29T12:42:28.610000-04:00",
    "tags": {
        "Name": "Probe1"
    }
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetProbe](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/get-probe.html)。

### `list-monitors`
<a name="networkmonitor_ListMonitors_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-monitors`。

**AWS CLI**  
**範例 1：列出所有監視器 (單一監視器)**  
下列 `list-monitors` 範例只會傳回單一監視器的清單。監視器的 `state` 是 `ACTIVE`，且其具有 60 秒的 `aggregationPeriod`。  

```
aws networkmonitor list-monitors
```
輸出：  

```
{
    "monitors": [{
            "monitorArn": "arn:aws:networkmonitor:region:012345678910:monitor/Example_NetworkMonitor",
            "monitorName": "Example_NetworkMonitor",
            "state": "ACTIVE",
            "aggregationPeriod": 60,
            "tags": {
                "Monitor": "Monitor1"
            }
        }
    ]
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
**範例 2：列出所有監視器 (多個監視器)**  
下列 `list-monitors` 範例會傳回三個監視器的清單。一個監視器的 `state` 是 `ACTIVE`，並且產生 CloudWatch 指標。其他兩個監視器的狀態為 `INACTIVE`，而不是產生 CloudWatch 指標。這三個監視器都使用 60 秒的 `aggregationPeriod`。  

```
aws networkmonitor list-monitors
```
輸出：  

```
{
    "monitors": [
        {
            "monitorArn": "arn:aws:networkmonitor:us-east-1:111122223333:monitor/Example_NetworkMonitor",
            "monitorName": "Example_NetworkMonitor",
            "state": "INACTIVE",
            "aggregationPeriod": 60,
            "tags": {}
        },
        {
            "monitorArn": "arn:aws:networkmonitor:us-east-1:111122223333:monitor/Example_NetworkMonitor2",
            "monitorName": "Example_NetworkMonitor2",
            "state": "ACTIVE",
            "aggregationPeriod": 60,
            "tags": {
                "Monitor": "Monitor1"
            }
        },
        {
            "monitorArn": "arn:aws:networkmonitor:us-east-1:111122223333:monitor/TestNetworkMonitor_CLI",
            "monitorName": "TestNetworkMonitor_CLI",
            "state": "INACTIVE",
            "aggregationPeriod": 60,
            "tags": {}
        }
    ]
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListMonitors](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/list-monitors.html)。

### `list-tags-for-resource`
<a name="networkmonitor_ListTagsForResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-tags-for-resource`。

**AWS CLI**  
**列出資源的標籤**  
下列 `list-tags-for-resource` 範例傳回名為 `Example_NetworkMonitor` 之監視器的標籤清單。  

```
aws networkmonitor list-tags-for-resource \
    --resource-arn arn:aws:networkmonitor:region:012345678910:monitor/Example_NetworkMonitor
```
輸出：  

```
{
    "tags": {
        "Environment": "Dev",
        "Application": "PetStore"
    }
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListTagsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/list-tags-for-resource.html)。

### `tag-resource`
<a name="networkmonitor_TagResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `tag-resource`。

**AWS CLI**  
**標記資源**  
下列 `tag-resource` 範例標記名為 `Example_NetworkMonitor` 且具有 `Environment=Dev` 和 `Application=PetStore` 標籤的監視器。  

```
aws networkmonitor tag-resource \
    --resource-arn arn:aws:networkmonitor:region:012345678910:monitor/Example_NetworkMonitor \
    --tags Environment=Dev,Application=PetStore
```
此命令不會產生輸出。  
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [TagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/tag-resource.html)。

### `untag-resource`
<a name="networkmonitor_UntagResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `untag-resource`。

**AWS CLI**  
**取消標記資源**  
下列 `untag-resource` 範例從與名為 `Example_NetworkMonitor` 之監視器的關聯中，移除具有鍵值對 `Environment Application` 的 `tag-keys` 參數。  

```
aws networkmonitor untag-resource \
    --resource-arn arn:aws:networkmonitor:region:012345678910:monitor/Example_NetworkMonitor \
    --tag-keys Environment Application
```
此命令不會產生輸出。  
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UntagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/untag-resource.html)。

### `update-monitor`
<a name="networkmonitor_UpdateMonitor_cli_topic"></a>

以下程式碼範例顯示如何使用 `update-monitor`。

**AWS CLI**  
**更新監視器**  
下列 `update-monitor` 範例將監視器的 `aggregationPeriod` 從 `60` 秒變更為 `30` 秒。  

```
aws networkmonitor update-monitor \
    --monitor-name Example_NetworkMonitor \
    --aggregation-period 30
```
輸出：  

```
{
    "monitorArn": "arn:aws:networkmonitor:region:012345678910:monitor/Example_NetworkMonitor",
    "monitorName": "Example_NetworkMonitor",
    "state": "PENDING",
    "aggregationPeriod": 30,
    "tags": {
        "Monitor": "Monitor1"
    }
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UpdateMonitor](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/update-monitor.html)。

### `update-probe`
<a name="networkmonitor_UpdateProbe_cli_topic"></a>

以下程式碼範例顯示如何使用 `update-probe`。

**AWS CLI**  
**更新探針**  
下列 `update-probe` 範例更新探針的原始 `destination` IP 位址，並將 `packetSize` 更新為 `60`。  

```
aws networkmonitor update-probe \
    --monitor-name Example_NetworkMonitor \
    --probe-id probe-12345 \
    --destination 10.0.0.150 \
    --packet-size 60
```
輸出：  

```
{
    "probeId": "probe-12345",
    "probeArn": "arn:aws:networkmonitor:region:012345678910:probe/probe-12345",
    "sourceArn": "arn:aws:ec2:region:012345678910:subnet/subnet-12345",
    "destination": "10.0.0.150",
    "destinationPort": 80,
    "protocol": "TCP",
    "packetSize": 60,
    "addressFamily": "IPV4",
    "vpcId": "vpc-12345",
    "state": "PENDING",
    "createdAt": "2024-03-29T12:41:57.314000-04:00",
    "modifiedAt": "2024-03-29T13:52:23.115000-04:00",
    "tags": {
        "Name": "Probe1"
    }
}
```
如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的 [Amazon CloudWatch 網路監視器如何運作](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/nw-monitor-how-it-works.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UpdateProbe](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/networkmonitor/update-probe.html)。