

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

# 監控 FSx 的 ONTAP EMS 事件
<a name="ems-events"></a>

您可以使用 NetAPP ONTAP 的原生事件管理系統 (EMS) 監控 FSx 的 ONTAP 檔案系統事件。您可以使用 NetApp ONTAP CLI 檢視這些事件。

**Topics**
+ [EMS 事件概觀](#ems-events-overview)
+ [檢視 EMS 事件](#view-ems-events)
+ [將 EMS 事件轉送至 Syslog 伺服器](#ems-log-forwarding)

## EMS 事件概觀
<a name="ems-events-overview"></a>

EMS 事件會自動產生通知，在 FSx for ONTAP 檔案系統中發生預先定義的條件時提醒您。這些通知會通知您，以便您可以防止或修正可能導致較大問題的問題，例如儲存虛擬機器 (SVM) 身分驗證問題或完整磁碟區。

根據預設，事件會記錄在事件管理系統日誌中。使用 EMS，您可以監控事件，例如使用者密碼變更、FlexGroup 內接近完整容量的組份、邏輯單位號碼 (LUN) 已手動上線或離線，或磁碟區自動調整大小。

如需 ONTAP EMS 事件的詳細資訊，請參閱 NetApp [ONTAP 文件中心中的 ONTAP EMS 參考](https://docs.netapp.com/us-en/ontap-ems-9121/index.html)。若要顯示事件類別，請使用文件的左側導覽窗格。

**注意**  
FSx for ONTAP 檔案系統只能使用一些 ONTAP EMS 訊息。若要檢視可用的 ONTAP EMS 訊息清單，請使用 NetApp ONTAP CLI [事件目錄 show](https://docs.netapp.com/us-en/ontap-cli-9131/event-catalog-show.html) 命令。

EMS 事件描述包含事件名稱、嚴重性、可能的原因、日誌訊息和修正動作，可協助您決定如何回應。例如，當磁碟區的自動調整大小失敗時，會發生 [ wafl.vol.autoSize.fail](https://docs.netapp.com/us-en/ontap-ems-9121/wafl-vol-events.html#wafl-vol-autosize-fail) 事件。根據事件描述，修正動作是在設定自動調整大小時增加磁碟區的大小上限。

## 檢視 EMS 事件
<a name="view-ems-events"></a>

使用 NetApp ONTAP CLI [事件日誌 show](https://docs.netapp.com/us-en/ontap-cli-9131/event-log-show.html) 命令來顯示事件日誌的內容。如果您在檔案系統上具有 `fsxadmin`角色，即可使用此命令。命令語法如下所示：

```
event log show [event_options]
```

首先列出最新的事件。根據預設，此命令會顯示具有下列資訊的 `ALERT`、 `EMERGENCY`和 `ERROR`嚴重性層級事件：
+ **時間** – 事件的時間。
+ **節點** – 事件發生的節點。
+ **嚴重性** – 事件的嚴重性層級。若要顯示 `NOTICE`、 `INFORMATIONAL`或 `DEBUG`嚴重性層級事件，請使用 `-severity`選項。
+ **事件** – 事件名稱和訊息。

若要顯示事件的詳細資訊，請使用下表所列的一或多個事件選項。


| 事件選項 | 描述 | 
| --- | --- | 
|  `-detail`  |  顯示其他事件資訊。  | 
|  `-detailtime`  |  以反向時間順序顯示詳細事件資訊。  | 
|  `-instance`  |  顯示所有欄位的詳細資訊。  | 
|  `-node nodename\|local`  |  顯示您指定節點的事件清單。使用此選項搭配 `-seqnum` 顯示詳細資訊。  | 
| `-seqnum sequence_number` | 選取符合序列中此數字的事件。使用 搭配 `-node`顯示詳細資訊。 | 
| `-time MM/DD/YYYY HH:MM:SS` | 選取在此特定時間發生的事件。使用格式：MM/DD/YYYY HH：MM：SS 【\$1- HH：MM】。您可以在兩個時間陳述式之間使用`..`運算子來指定時間範圍。 <pre>event log show -time "04/17/2023 05:55:00".."04/17/2023 06:10:00"</pre> 比較時間值是相對於執行 命令時的目前時間。下列範例顯示如何僅顯示最後一分鐘內發生的事件： <pre>event log show -time >1m</pre> 此選項的月份和日期欄位不是零填充。這些欄位可以是單一數字；例如 `4/1/2023 06:45:00`。  | 
|  `-severity sev_level`  |  選取符合 *sev\$1level* 值的事件，其必須是下列其中一項： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/fsx/latest/ONTAPGuide/ems-events.html) 若要顯示所有事件，請指定嚴重性，如下所示： <pre>event log show -severity <=DEBUG</pre>  | 
|  `-ems-severity ems_sev_level`  |  選取符合 *ems\$1sev\$1level* 值的事件，其必須為下列其中一項： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/fsx/latest/ONTAPGuide/ems-events.html) 若要顯示所有事件，請指定嚴重性，如下所示： <pre>event log show -ems-severity <=DEBUG</pre>  | 
|  `-source text`  |  選取符合*文字*值的事件。來源通常是軟體模組。  | 
|  `-message-name message_name`  |  選取符合 *message\$1name* 值的事件。訊息名稱是描述性的，因此依訊息名稱篩選輸出會顯示特定類型的訊息。  | 
|  `-event text`  |  選取符合*文字*值的事件。`event` 欄位包含事件的完整文字，包括任何參數。  | 
|  `-kernel-generation-num integer`  |  選取符合*整數*值的事件。只有來自核心的事件具有核心產生數字。  | 
|  `-kernel-sequence-num integer`  |  選取符合*整數*值的事件。只有來自核心的事件具有核心序號。  | 
|  `-action text`  |  選取符合*文字*值的事件。`action` 欄位說明如果有的話，您必須採取哪些修正動作來修正情況。  | 
|  `-description text`  |  選取符合*文字*值的事件。`description` 欄位說明事件發生的原因及其意義。  | 
|  `-filter-name filter_name`  |  選取符合 *filter\$1name* 值的事件。只有符合此值的現有篩選條件所包含的事件才會顯示。  | 
|  `-fields fieldname,...`  |  表示命令輸出也包含指定的欄位。您可以使用 `-fields ?`來選擇您要指定的欄位。  | 

**檢視 EMS 事件**

1. 若要將 SSH 插入檔案系統的 NetApp ONTAP CLI，請遵循 *Amazon FSx for NetApp ONTAP 使用者指南* [使用 NetApp ONTAP CLI](managing-resources-ontap-apps.md#netapp-ontap-cli)一節中記錄的步驟。

   ```
   ssh fsxadmin@file-system-management-endpoint-ip-address
   ```

1. 使用 `event log show`命令來顯示事件日誌的內容。

   ```
   ::> event log show
   Time                Node          Severity      Event
   ------------------- ------------- ------------- ------------------------
   6/30/2023 13:54:19  node1         NOTICE        vifmgr.portup: A link up event was received on node node1, port e0a.
   6/30/2023 13:54:19  node1         NOTICE        vifmgr.portup: A link up event was received on node node1, port e0d.
   ```

如需 `event log show`命令傳回之 EMS 事件的相關資訊，請參閱 NetApp [ONTAP 文件中心中的 ONTAP EMS 參考](https://docs.netapp.com/us-en/ontap-ems-9121/index.html)。

## 將 EMS 事件轉送至 Syslog 伺服器
<a name="ems-log-forwarding"></a>

您可以設定 EMS 事件，將通知轉送至 Syslog 伺服器。EMS 事件轉送用於即時監控檔案系統，以判斷和隔離各種問題的根本原因。如果您的環境尚未包含事件通知的 Syslog 伺服器，您必須先建立一個伺服器。DNS 必須在檔案系統上設定，才能解析 Syslog 伺服器名稱。

**注意**  
您的 Syslog 目的地必須位於檔案系統使用的主要子網路中。

**設定 EMS 事件將通知轉送至 Syslog 伺服器**

1.  若要將 SSH 插入檔案系統的 NetApp ONTAP CLI，請遵循 *Amazon FSx for NetApp ONTAP 使用者指南* [使用 NetApp ONTAP CLI](managing-resources-ontap-apps.md#netapp-ontap-cli)一節中記錄的步驟。

   ```
   ssh fsxadmin@file-system-management-endpoint-ip-address
   ```

1. 使用[事件通知目的地建立](https://docs.netapp.com/us-en/ontap-cli-9131/event-notification-destination-create.html)命令來建立類型 的事件通知目的地`syslog`，指定下列屬性：
   + `dest_name` – 要建立的通知目的地名稱 （例如 `syslog-ems`)。事件通知目的地名稱長度必須為 2 到 64 個字元。有效字元包括下列 ASCII 字元：A-Z、a-z、0-9、"\$1" 和 "-"。名稱的開頭和結尾必須是：A-Z、a-z 或 0-9。
   + `syslog_name` – 傳送 Syslog 訊息的 Syslog 伺服器主機名稱或 IP 地址。
   + `transport_protocol` – 用來傳送事件的通訊協定：
     + `udp-unencrypted` – 無安全性的使用者資料包通訊協定。這是預設通訊協定。
     + `tcp-unencrypted` – 無安全性的傳輸控制通訊協定。
     + `tcp-encrypted` – 具有 Transport Layer Security (TLS) 的傳輸控制通訊協定。指定此選項時，FSx for ONTAP 會透過驗證其憑證來驗證目的地主機的身分。
   + `port_number` – 傳送 Syslog 訊息的 Syslog 伺服器連接埠。預設值`syslog-port`參數取決於 `syslog-transport` 參數的設定。如果 `syslog-transport` 設定為 `tcp-encrypted`，`syslog-port`則預設值為 `6514`。如果 `syslog-transport` 設定為 `tcp-unencrypted`，則 `syslog-port`具有預設值 `601`。否則，預設連接埠會設為 `514`。

   ```
   ::> event notification destination create -name dest_name -syslog syslog_name -syslog-transport transport_protocol -syslog-port port_number
   ```

1. 使用[事件通知建立](https://docs.netapp.com/us-en/ontap-cli-9131/event-notification-create.html)命令，為事件篩選條件定義的一組事件建立新的通知，傳送至上一個步驟中建立的通知目的地，並指定下列屬性：
   + `node_name` – 事件篩選條件的名稱。包含在事件篩選條件中的事件會轉送至 `-destinations` 參數中指定的目的地。
   + `dest_name` – 傳送事件通知的現有通知目的地名稱。

   ```
   ::> event notification create -filter-name filter_name -destinations dest_name
   ```

1. 如果您選取 TCP 做為 `transport_protocol`，您可以使用 `event notification destination check`命令產生測試訊息，並驗證您的設定是否有效。使用 命令指定下列屬性：
   + `node_name` – 節點的名稱 （例如 `FsxId07353f551e6b557b4-01`)。
   + `dest_name` – 傳送事件通知的現有通知目的地名稱。

   ```
   ::> set diag
   ::*> event notification destination check -node node_name -destination-name dest_name
   ```