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
È 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
Autorizzazioni
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:
Schema di registro
Di seguito è riportato lo schema utilizzato nella registrazione degli esperimenti. La versione attuale dello schema è la 2. I campi per details
dipendono dal valore dilog_type
. I campi per resolved_targets
dipendono dal valore ditarget_type
. Per ulteriori informazioni, consulta Esempi di record di registro.
{
"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 loresolved_targets
modifica da un elenco di ARN a un elenco di oggetti. I campi validi per l'resolved_targets
oggetto dipendono dal valore ditarget_type
, che è il tipo di risorsa degli obiettivi. -
I
action-error
e i tipi ditarget-resolution-detail
eventi che aggiungono ilaccount_id
campo.
-
-
La versione 1 è la versione iniziale.
Destinazioni di registro
AWSFIS 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
_YYYYMMDDHHMM
Z_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 di log denominato /aws/fis/ experiment-id.
I log vengono consegnati al gruppo di log in meno di un minuto.
Esempi di record di registro
Di seguito sono riportati alcuni esempi di record di log per un esperimento che esegue l'aws:ec2:reboot-instancesazione su un'istanza EC2 selezionata a caso.
Registri
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"
}
}
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"
}
}
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"
}
}
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'azione EC2.
{
"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
}
}
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"}
}
}
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]:"
}
}
}
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."
}
}
}
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
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
Aprire la console AWS FIS all'indirizzo https://console.aws.amazon.com/fis/.
-
Nel riquadro di navigazione, scegli Modelli di esperimenti.
-
Seleziona il modello di esperimento e scegli Azioni, Aggiorna modello di esperimento.
-
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
-
Scegliete Aggiorna modello di esperimento.
Per abilitare la registrazione dell'esperimento utilizzando il AWS CLI
Utilizzate il update-experiment-template
Disabilita la registrazione degli esperimenti
Se non desideri più ricevere i registri degli esperimenti, puoi disabilitare la registrazione degli esperimenti.
Per disabilitare la registrazione degli esperimenti tramite la console
Aprire la console AWS FIS all'indirizzo https://console.aws.amazon.com/fis/.
-
Nel riquadro di navigazione, scegli Modelli di esperimenti.
-
Seleziona il modello di esperimento e scegli Azioni, Aggiorna modello di esperimento.
-
Per i log, deseleziona Invia a un bucket Amazon S3 e Invia ai registri. CloudWatch
-
Scegli Aggiorna modello di esperimento.
Per disabilitare la registrazione dell'esperimento utilizzando il AWS CLI
Utilizzate il update-experiment-template