

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Registrazione degli esperimenti per AWS FIS
<a name="monitoring-logging"></a>

È possibile utilizzare la registrazione dell'esperimento per acquisire informazioni dettagliate sull'esperimento mentre viene eseguito.

I costi per la registrazione dell'esperimento vengono calcolati in base ai costi associati a ciascun tipo di destinazione del registro. [Per ulteriori informazioni, consulta la pagina [ CloudWatch dei prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing/) (sotto **Paid Tier**, **Logs**, **Vending Logs) e i** prezzi di Amazon S3.](https://aws.amazon.com/s3/pricing/)

## Autorizzazioni
<a name="permissions-experiment-logging"></a>

Devi concedere le autorizzazioni AWS FIS per inviare i log a ogni destinazione di log che configuri. Per ulteriori informazioni, consulta quanto segue nella *Amazon CloudWatch Logs User Guide*:
+ [Log inviati a Logs CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-CWL)
+ [Registri inviati ad Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-S3)

## Schema di registro
<a name="experiment-log-schema"></a>

Di seguito è riportato lo schema utilizzato nella registrazione degli esperimenti. La versione attuale dello schema è la 2. I campi per `details` dipendono dal valore di`log_type`. I campi per `resolved_targets` dipendono dal valore di`target_type`. Per ulteriori informazioni, consulta [Esempi di record di registro](#example-log-records).

```
{
    "id": "EXP123abc456def789",
    "log_type": "experiment-start | target-resolution-start | target-resolution-detail | target-resolution-end | action-start | action-error | action-end | experiment-end",
    "event_timestamp": "yyyy-mm-ddThh:mm:ssZ",
    "version": "2",
    "details": {
        "account_id":"123456789012",
        "action_end_time": "yyyy-mm-ddThh:mm:ssZ",
        "action_id": "String",
        "action_name": "String",
        "action_start_time": "yyyy-mm-ddThh:mm:ssZ",
        "action_state": {
            "status": "pending | initiating | running | completed | cancelled | stopping | stopped | failed",
            "reason": "String"
        },
        "action_targets": "String to string map",
        "error_information": "String",
        "experiment_end_time": "yyyy-mm-ddThh:mm:ssZ",
        "experiment_state": {
            "status": "pending | initiating | running | completed | stopping | stopped | failed",
            "reason": "String"
        },
        "experiment_start_time": "yyyy-mm-ddThh:mm:ssZ",
        "experiment_template_id": "String",
        "page": Number,
        "parameters": "String to string map",
        "resolved_targets": [
            {
               "field": "value"
            }
        ],
        "resolved_targets_count": Number,
        "status": "failed | completed",
        "target_name": "String",
        "target_resolution_end_time": "yyyy-mm-ddThh:mm:ssZ",
        "target_resolution_start_time": "yyyy-mm-ddThh:mm:ssZ",
        "target_type": "String",
        "total_pages": Number,
        "total_resolved_targets_count": Number

    }
}
```

**Note di rilascio**
+ La versione 2 introduce:
  + Il `target_type` campo e lo `resolved_targets` modifica da un elenco di ARNs a un elenco di oggetti. I campi validi per l'`resolved_targets`oggetto dipendono dal valore di`target_type`, che è il [tipo di risorsa](targets.md#resource-types) degli obiettivi.
  + I `action-error` e i tipi di `target-resolution-detail` eventi che aggiungono il `account_id` campo.
+ La versione 1 è la versione iniziale.

## Destinazioni di registro
<a name="experiment-log-destinations"></a>

AWS FIS supporta la consegna dei log alle seguenti destinazioni:
+ Un bucket Amazon S3
+ Un gruppo di CloudWatch log di Amazon Logs

**Consegna dei log S3**  
I registri vengono consegnati nella seguente posizione.

```
bucket-and-optional-prefix/AWSLogs/account-id/fis/region/experiment-id/YYYY/MM/DD/account-id_awsfislogs_region_experiment-id_YYYYMMDDHHMMZ_hash.log
```

Possono essere necessari alcuni minuti prima che i registri vengano consegnati al bucket.

**CloudWatch Registri, consegna dei log**  
I log vengono consegnati a un flusso named /aws/fis di log/. *experiment-id*

I log vengono consegnati al gruppo di log in meno di un minuto.

## Esempi di record di registro
<a name="example-log-records"></a>

Di seguito sono riportati alcuni esempi di record di registro per un esperimento che esegue l'**aws:ec2:reboot-instances**azione su un' EC2 istanza selezionata a caso.

**Registri**
+ [inizio dell'esperimento](#experiment-start)
+ [target-resolution-start](#target-resolution-start)
+ [target-resolution-detail](#target-resolution-detail)
+ [target-resolution-end](#target-resolution-end)
+ [inizio azione](#action-start)
+ [azione-fine](#action-end)
+ [errore di azione](#action-error)
+ [fine dell'esperimento](#experiment-end)<a name="experiment-start"></a>

**inizio esperimento**  
Di seguito è riportato un record di esempio per l'`experiment-start`evento.

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "experiment-start",
    "event_timestamp": "2023-05-31T18:50:45Z",
    "version": "2",
    "details": {
        "experiment_template_id": "EXTCDh1M8HHkhxoaQ",
        "experiment_start_time": "2023-05-31T18:50:43Z"
    }
}
```<a name="target-resolution-start"></a>

**target-resolution-start**  
Di seguito è riportato un record di esempio per l'`target-resolution-start`evento.

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "target-resolution-start",
    "event_timestamp": "2023-05-31T18:50:45Z",
    "version": "2",
    "details": {
        "target_resolution_start_time": "2023-05-31T18:50:45Z",
        "target_name": "EC2InstancesToReboot"
    }
}
```<a name="target-resolution-detail"></a>

**target-resolution-detail**  
Di seguito è riportato un record di esempio per l'`target-resolution-detail`evento. Se la risoluzione dell'obiettivo fallisce, il record include anche il `error_information` campo.

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "target-resolution-detail",
    "event_timestamp": "2023-05-31T18:50:45Z",
    "version": "2",
    "details": {
        "target_resolution_end_time": "2023-05-31T18:50:45Z",
        "target_name": "EC2InstancesToReboot",
        "target_type": "aws:ec2:instance",
        "account_id": "123456789012",
        "resolved_targets_count": 2,
        "status": "completed"

    }
}
```<a name="target-resolution-end"></a>

**target-resolution-end**  
Se la risoluzione dell'obiettivo fallisce, il record include anche il `error_information` campo. Se `total_pages` è maggiore di 1, il numero di obiettivi risolti ha superato il limite di dimensione per un record. Esistono `target-resolution-end` record aggiuntivi che contengono gli obiettivi risolti rimanenti.

Di seguito è riportato un esempio di record per l'`target-resolution-end`evento relativo a un' EC2 azione.

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "target-resolution-end",
    "event_timestamp": "2023-05-31T18:50:45Z",
    "version": "2",
    "details": {
        "target_resolution_end_time": "2023-05-31T18:50:46Z",
        "target_name": "EC2InstanceToReboot",
        "target_type": "aws:ec2:instance",
        "resolved_targets": [
            {
                "arn": "arn:aws:ec2:us-east-1:123456789012:instance/i-0f7ee2abffc330de5"
            }
        ],
        "page": 1,
        "total_pages": 1
    }
}
```

Di seguito è riportato un record di esempio per l'`target-resolution-end`evento di un'azione EKS.

```
{
    "id": "EXP24YfiucfyVPJpEJn",
    "log_type": "target-resolution-end",
    "event_timestamp": "2023-05-31T18:50:45Z",
    "version": "2",
    "details": {
        "target_resolution_end_time": "2023-05-31T18:50:46Z",
        "target_name": "myPods",
        "target_type": "aws:eks:pod",
        "resolved_targets": [
            {
                "pod_name": "example-696fb6498b-sxhw5",
                "namespace": "default",
                "cluster_arn": "arn:aws:eks:us-east-1:123456789012:cluster/fis-demo-cluster",
                "target_container_name": "example"
            }
        ],
        "page": 1,
        "total_pages": 1
    }
}
```<a name="action-start"></a>

**inizio-azione**  
Di seguito è riportato un record di esempio per l'`action-start`evento. Se il modello di esperimento specifica i parametri per l'azione, il record include anche il `parameters` campo.

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "action-start",
    "event_timestamp": "2023-05-31T18:50:56Z",
    "version": "2",
    "details": {
        "action_name": "Reboot",
        "action_id": "aws:ec2:reboot-instances",
        "action_start_time": "2023-05-31T18:50:56Z",
        "action_targets": {"Instances":"EC2InstancesToReboot"}
    }
}
```<a name="action-error"></a>

**azione-errore**  
Di seguito è riportato un record di esempio per l'`action-error`evento. Questo evento viene restituito solo quando un'azione fallisce. Viene restituito per ogni account in cui l'azione ha esito negativo. 

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "action-error",
    "event_timestamp": "2023-05-31T18:50:56Z",
    "version": "2",
    "details": {
        "action_name": "pause-io",
        "action_id": "aws:ebs:pause-volume-io",
        "account_id": "123456789012",
        "action_state": {
            "status": "failed",
            "reason":"Unable to start Pause Volume IO. Target volumes must be attached to an instance type based on the Nitro system. VolumeId(s): [vol-1234567890abcdef0]:"
        }
    }
}
```<a name="action-end"></a>

**fine dell'azione**  
Di seguito è riportato un record di esempio per l'`action-end`evento.

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "action-end",
    "event_timestamp": "2023-05-31T18:50:56Z",
    "version": "2",
    "details": {
        "action_name": "Reboot",
        "action_id": "aws:ec2:reboot-instances",
        "action_end_time": "2023-05-31T18:50:56Z",
        "action_state": {
            "status": "completed",
            "reason": "Action was completed."
        }
    }
}
```<a name="experiment-end"></a>

**fine dell'esperimento**  
Di seguito è riportato un record di esempio per l'`experiment-end`evento.

```
{
    "id": "EXPhjAXCGY78HV2a4A",
    "log_type": "experiment-end",
    "event_timestamp": "2023-05-31T18:50:57Z",
    "version": "2",
    "details": {
        "experiment_end_time": "2023-05-31T18:50:57Z",
        "experiment_state": {
            "status": "completed",
            "reason": "Experiment completed"
        }
    }
}
```

## Abilita la registrazione degli esperimenti
<a name="enable-experiment-logging"></a>

La registrazione degli esperimenti è disattivata per impostazione predefinita. Per ricevere i registri degli esperimenti, è necessario creare l'esperimento da un modello di esperimento con la registrazione abilitata. La prima volta che esegui un esperimento configurato per utilizzare una destinazione che non è stata utilizzata in precedenza per la registrazione, ritardiamo l'esperimento per configurare l'invio dei log a questa destinazione, operazione che richiede circa 15 secondi.

**Per abilitare la registrazione degli esperimenti tramite la console**

1. Aprire la console AWS FIS all'indirizzo. [https://console.aws.amazon.com/fis/](https://console.aws.amazon.com/fis/)

1. Nel riquadro di navigazione, scegli **Modelli di esperimenti**.

1. Seleziona il modello di esperimento e scegli **Azioni**, **Aggiorna modello di esperimento**.

1. Per **i registri**, configura le opzioni di destinazione. Per inviare i log a un bucket S3, scegli **Invia a un bucket Amazon S3 e inserisci il nome e il prefisso del bucket**. **Per inviare i log a Logs, scegli Send to CloudWatch Logs e inserisci il gruppo di log. CloudWatch **

1. Scegliete **Aggiorna** modello di esperimento.

**Per abilitare la registrazione dell'esperimento utilizzando il AWS CLI**  
Utilizzate il [update-experiment-template](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/fis/update-experiment-template.html)comando e specificate una configurazione di registro.

## Disabilita la registrazione degli esperimenti
<a name="disable-experiment-logging"></a>

Se non desideri più ricevere i registri degli esperimenti, puoi disabilitare la registrazione degli esperimenti.

**Per disabilitare la registrazione degli esperimenti tramite la console**

1. Aprire la console AWS FIS all'indirizzo. [https://console.aws.amazon.com/fis/](https://console.aws.amazon.com/fis/)

1. Nel riquadro di navigazione, scegli **Modelli di esperimenti**.

1. Seleziona il modello di esperimento e scegli **Azioni**, **Aggiorna modello di esperimento**.

1. Per **i log**, deseleziona **Invia a un bucket Amazon S3** **e** Invia ai registri. CloudWatch 

1. **Scegli Aggiorna modello di esperimento.**

**Per disabilitare la registrazione dell'esperimento utilizzando il AWS CLI**  
Utilizzate il [update-experiment-template](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/fis/update-experiment-template.html)comando e specificate una configurazione di registro vuota.