

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

# 檢視 Amazon EMR 日誌檔案
<a name="emr-manage-view-web-log-files"></a>

 Amazon EMR 和 Hadoop 都會產生報告叢集狀態的日誌檔案。根據預設，會將它們寫入 `/mnt/var/log/` 目錄的主節點。根據您設定叢集的方式而定，當您啟動叢集時，這些日誌也可能會封存至 Amazon S3，並且可透過圖形偵錯工具檢視。

 寫入主節點的日誌類型有許多種。Amazon EMR 會撰寫步驟、引導動作和執行個體狀態日誌。Apache Hadoop 會撰寫日誌來回報任務、任務和任務嘗試的處理情形。Hadoop 也會記錄其協助程式的日誌。如需 Hadoop 所撰寫日誌的詳細資訊，請前往 [http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html](http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html)。

## 檢視主節點上的日誌檔案
<a name="emr-manage-view-web-log-files-master-node"></a>

下表列出可在主節點上尋找的一些日誌檔案。


| Location | Description | 
| --- | --- | 
| /emr/instance-controller/log/bootstrap-actions | 在處理引導操作期間撰寫的日誌。 | 
| /mnt/var/log/hadoop-state-pusher | Hadoop 狀態推送器程序撰寫的日誌。 | 
| /emr/instance-controller/log | 執行個體控制器日誌。 | 
| /emr/instance-state | 執行個體狀態日誌。這些日誌包含有關節點的 CPU、記憶體狀態和廢棄項目收集器執行緒的資訊。 | 
| /emr/service-nanny | service nanny 程序撰寫的日誌。 | 
| /mnt/var/log/{{application}} | 應用程式專屬日誌，例如 Hadoop、Spark 或 Hive。 | 
| /mnt/var/log/hadoop/steps/{{N}} | 步驟日誌，包含處理步驟的相關資訊。{{N}} 值表示 Amazon EMR 指派的步驟 Id。例如，叢集有兩個步驟：`s-1234ABCDEFGH` 和 `s-5678IJKLMNOP`。第一個步驟位於 `/mnt/var/log/hadoop/steps/s-1234ABCDEFGH/` 中，第二個步驟位於 `/mnt/var/log/hadoop/steps/s-5678IJKLMNOP/` 中。<br /> 由 Amazon EMR 編寫的步驟日誌如下所示。[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/emr-manage-view-web-log-files.html) | 

**使用 AWS CLI檢視主節點上的日誌檔案。**

1.  使用 SSH 連接到主節點，如 [使用 SSH 連線至 Amazon EMR 叢集主節點](emr-connect-master-node-ssh.md) 中所述。

1.  導覽至包含您要檢視的日誌檔資訊的目錄。上表提供可用的日誌檔類型清單，以及這些日誌檔的所在位置。以下範例說明導覽至 ID 為 `s-1234ABCDEFGH` 之步驟日誌的命令。

   ```
   cd /mnt/var/log/hadoop/steps/s-1234ABCDEFGH/
   ```

1. 使用您選擇的檔案檢視器來檢視日誌檔。以下範例使用 Linux `less` 命令來檢視 `controller` 日誌檔。

   ```
   less controller
   ```

## 檢視封存至 Amazon S3 的日誌檔案
<a name="emr-manage-view-web-log-files-s3"></a>

根據預設，使用主控台啟動的 Amazon EMR 叢集會自動將日誌檔案封存到 Amazon S3。您可以指定自己的日誌路徑，也可以讓主控台自動產生日誌路徑。若是使用 CLI 或 API 啟動叢集，您必須手動設定 Amazon S3 日誌封存。

 當 Amazon EMR 設定為將日誌檔案封存到 Amazon S3 時，它會將檔案儲存到您所指定的 S3 位置中，位於 /{{cluster-id}}/ 資料夾，其中 {{cluster-id}} 是叢集 ID。

下表列出可在 Amazon S3 中尋找的一些日誌檔案。


| Location | Description | 
| --- | --- | 
| /{{cluster-id}}/node/ | 節點日誌，包括節點的引導操作、執行個體狀態和應用程式日誌。每個節點的日誌都會存放在以該節點的 EC2 執行個體識別符標示的資料夾中。 | 
| /{{cluster-id}}/node/{{instance-id}}/{{application}} | 每個應用程式或與應用程式相關聯的協助程式所建立的日誌。例如，Hive 伺服器日誌位於 `{{cluster-id}}/node/{{instance-id}}/hive/hive-server.log`。 | 
| /{{cluster-id}}/steps/{{step-id}}/ | 步驟日誌，包含處理步驟的相關資訊。{{step-id}} 的值表示 Amazon EMR 指派的步驟 Id。例如，叢集有兩個步驟：`s-1234ABCDEFGH` 和 `s-5678IJKLMNOP`。第一個步驟位於 `/mnt/var/log/hadoop/steps/s-1234ABCDEFGH/` 中，第二個步驟位於 `/mnt/var/log/hadoop/steps/s-5678IJKLMNOP/` 中。<br /> 由 Amazon EMR 編寫的步驟日誌如下所示。[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/emr-manage-view-web-log-files.html) | 
| /{{cluster-id}}/containers | 應用程式容器日誌。每個 YARN 應用程式的日誌都會存放在這些位置。 | 
| /{{cluster-id}}/hadoop-mapreduce/ | 包含 MapReduce 任務之組態詳細資訊和歷程記錄的日誌。 | 

**使用 Amazon S3 主控台檢視封存至 Amazon S3 的日誌檔案**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)：// 開啟 Amazon S3 主控台。

1. 當您設定叢集將日誌檔案封存在 Amazon S3 中時，請開啟指定的 S3 儲存貯體。

1. 導覽至包含所要顯示資訊的日誌檔。上表提供可用的日誌檔類型清單，以及這些日誌檔的所在位置。

1. 下載日誌檔案物件進行檢視。如需指示，請參閱[下載物件](https://docs.aws.amazon.com/AmazonS3/latest/userguide/download-objects.html)。