

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Logs do agendador no AWS PCS
<a name="monitoring_scheduler-logs"></a>

Você pode configurar o AWS PCS para enviar dados de registro detalhados do seu agendador de cluster para o Amazon CloudWatch Logs, o Amazon Simple Storage Service (Amazon S3) e o Amazon Data Firehose. Isso pode ajudar no monitoramento e na solução de problemas.

AWS O PCS fornece registros dos seguintes daemons do Slurm por meio do tipo de log: `PCS_SCHEDULER_LOGS`
+ **`slurmctld`**— O daemon do controlador Slurm. Disponível para todas as versões compatíveis do Slurm.
+ **`slurmdbd`**— O daemon do banco de dados Slurm. Disponível para o Slurm 24.11 e versões posteriores.
+ **`slurmrestd`**— O daemon da API REST do Slurm. Disponível para o Slurm 25.05 e versões posteriores.

Os clusters que já têm a `PCS_SCHEDULER_LOGS` entrega configurada começam a receber `slurmdbd` e `slurmrestd` registram automaticamente quando executam uma versão compatível do Slurm. Não é exigida nenhuma configuração adicional.

**Contents**
+ [Pré-requisitos](#monitoring_scheduler-logs_prereqs)
+ [Configurar registros do agendador](#monitoring_scheduler-logs_setup)
+ [Caminhos e nomes do fluxo de registros do agendador](#monitoring_scheduler-logs_paths)
+ [Exemplos de registros de log do agendador](#monitoring_scheduler-logs_record)

## Pré-requisitos
<a name="monitoring_scheduler-logs_prereqs"></a>

O diretor do IAM que gerencia o cluster AWS PCS deve permitir a `pcs:AllowVendedLogDeliveryForResource` ação.

O exemplo a seguir da política do IAM concede as permissões necessárias.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Sid": "PcsAllowVendedLogsDelivery",
         "Effect": "Allow",
         "Action": ["pcs:AllowVendedLogDeliveryForResource"],
         "Resource": [
            "arn:aws:pcs:*::cluster/*"
         ]
      }
   ]
}
```

------

## Configurar registros do agendador
<a name="monitoring_scheduler-logs_setup"></a>

Você pode configurar os registros do agendador para seu cluster AWS PCS com o Console de gerenciamento da AWS ou AWS CLI.

------
#### [ Console de gerenciamento da AWS ]

**Para configurar os registros do agendador com o console**

1. Abra o [console AWS PCS](https://console.aws.amazon.com/pcs).

1. No painel de navegação, escolha **Clusters**.

1. Escolha o cluster ao qual você deseja adicionar os registros do agendador.

1. Na página de detalhes do cluster, escolha a guia **Registros**.

1. Em **Scheduler Logs**, escolha **Add** para adicionar até 3 destinos de entrega de CloudWatch logs entre Logs, Amazon S3 e Firehose.

1. Escolha **Atualizar entregas de registros**.

------
#### [ AWS CLI ]

**Para configurar os registros do agendador com o AWS CLI**

1. Crie um destino de entrega de registros:

   ```
   aws logs put-delivery-destination --region {{region}} \
     --name {{pcs-logs-destination}} \
     --delivery-destination-configuration \
     destinationResourceArn={{resource-arn}}
   ```

   Substitua:
   + {{region}}— O Região da AWS local onde você deseja criar o destino, como `us-east-1`
   + {{pcs-logs-destination}}— Um nome para o destino
   + {{resource-arn}}— O Amazon Resource Name (ARN) de um grupo de CloudWatch logs do Logs, bucket S3 ou stream de entrega do Firehose.

   Para obter mais informações, consulte [PutDeliveryDestination](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html)a *Referência da API Amazon CloudWatch Logs*.

1. Defina o cluster PCS como uma fonte de entrega de registros:

   ```
   aws logs put-delivery-source --region {{region}} \
     --name {{cluster-logs-source-name}} \
     --resource-arn {{cluster-arn}} \
     --log-type PCS_SCHEDULER_LOGS
   ```

   Substitua:
   + {{region}}— O Região da AWS do seu cluster, como `us-east-1`
   + {{cluster-logs-source-name}}— Um nome para a fonte
   + {{cluster-arn}}— o ARN do seu AWS cluster PCS

   Para obter mais informações, consulte [PutDeliverySource](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html)a *Referência da API Amazon CloudWatch Logs*.

1. Conecte a fonte de entrega ao destino da entrega:

   ```
   aws logs create-delivery --region {{region}} \
     --delivery-source-name {{cluster-logs-source}} \
     --delivery-destination-arn {{destination-arn}}
   ```

   Substitua:
   + {{region}}— O Região da AWS, como `us-east-1`
   + {{cluster-logs-source}}— O nome da sua fonte de entrega
   + {{destination-arn}}— O ARN do seu destino de entrega

   Para obter mais informações, consulte [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html)a *Referência da API Amazon CloudWatch Logs*.

------

## Caminhos e nomes do fluxo de registros do agendador
<a name="monitoring_scheduler-logs_paths"></a>

 O caminho e o nome dos registros do agendador AWS PCS dependem do tipo de destino. 

O `${log_name}` valor nos caminhos abaixo é`slurmctld`,`slurmdbd`, ou`slurmrestd`, dependendo do daemon que produziu o log.
+ **CloudWatch Logs**
  + Um stream de CloudWatch registros segue essa convenção de nomenclatura.

    ```
    AWSLogs/PCS/${cluster_id}/${log_name}_${scheduler_major_version}.log
    ```  
**Example**  

    ```
    AWSLogs/PCS/abcdef0123/slurmctld_25.11.log
    AWSLogs/PCS/abcdef0123/slurmdbd_24.11.log
    AWSLogs/PCS/abcdef0123/slurmrestd_25.05.log
    ```
+ **Bucket do S3**
  + Um caminho de saída do bucket S3 segue esta convenção de nomenclatura:

    ```
    AWSLogs/${account-id}/PCS/${region}/${cluster_id}/${log_name}/${scheduler_major_version}/yyyy/MM/dd/HH/
    ```  
**Example**  

    ```
    AWSLogs/111111111111/PCS/us-east-2/abcdef0123/slurmctld/25.11/2024/09/01/00/
    AWSLogs/111111111111/PCS/us-east-2/abcdef0123/slurmdbd/24.11/2024/09/01/00/
    AWSLogs/111111111111/PCS/us-east-2/abcdef0123/slurmrestd/25.05/2024/09/01/00/
    ```
  + Um nome de objeto S3 segue esta convenção:

    ```
    PCS_${log_name}_${scheduler_major_version}_#{expr date 'event_timestamp', format: "yyyy-MM-dd-HH"}_${cluster_id}_${hash}.log
    ```  
**Example**  

    ```
    PCS_slurmctld_25.11_2024-09-01-00_abcdef0123_0123abcdef.log
    ```

## Exemplos de registros de log do agendador
<a name="monitoring_scheduler-logs_record"></a>

AWS Os registros do agendador PCS são estruturados. Eles incluem campos como identificador do cluster, tipo de agendador, versões principais e de patch, além da mensagem de log emitida pelo processo daemon do Slurm. Os `node_type` campos `log_name` e identificam qual daemon produziu o log.

O exemplo a seguir mostra um registro de `slurmctld` log.

```
{
    "resource_id": "s3431v9rx2",
    "resource_type": "PCS_CLUSTER",
    "event_timestamp": 1721230979,
    "log_level": "info",
    "log_name": "slurmctld",
    "scheduler_type": "slurm",
    "scheduler_major_version": "25.11",
    "scheduler_patch_version": "2",
    "node_type": "controller_primary",
    "message": "[2024-07-17T15:42:58.614+00:00] Running as primary controller\n"
}
```

O exemplo a seguir mostra um registro de `slurmdbd` log (Slurm 24.11 e versões posteriores).

```
{
    "resource_id": "pcs_bu93qsds2j",
    "resource_type": "PCS_CLUSTER",
    "event_timestamp": 1774485082772,
    "log_level": "info",
    "log_name": "slurmdbd",
    "scheduler_type": "slurm",
    "scheduler_major_version": "25.11",
    "scheduler_patch_version": "2",
    "node_type": "slurmdbd_primary",
    "message": "[2026-03-26T00:31:22.772+00:00] mysql_common: storage token refreshed"
}
```

O exemplo a seguir mostra um registro de `slurmrestd` log (Slurm 25.05 e versões posteriores).

```
{
    "resource_id": "pcs_bu93qsds2j",
    "resource_type": "PCS_CLUSTER",
    "event_timestamp": 1774485082772,
    "log_level": "info",
    "log_name": "slurmrestd",
    "scheduler_type": "slurm",
    "scheduler_major_version": "25.05",
    "scheduler_patch_version": "3",
    "node_type": "slurmrestd_primary",
    "message": "[2026-03-26T00:31:22.772+00:00] slurmrestd: Listening on port 6820\n"
}
```