Come posso risolvere gli errori del flusso di contatti in Amazon Connect?

6 minuti di lettura
0

Desidero esaminare i flussi di contatti per identificare quale blocco all'interno del flusso di contatti segue il ramo di errore.

Breve descrizione

Per un tutorial sulla risoluzione degli errori del flusso di contatti, consulta il workshop Risoluzione degli errori del flusso di contatti in Amazon Connect.

Per esaminare e risolvere i problemi relativi ai flussi di contatti, è necessario disporre dei seguenti prerequisiti:

Log del flusso di contatti

Attiva i log del flusso. Utilizza i log del flusso di contatti per capire come una chiamata attraversa i diversi blocchi del flusso di contatti. Inoltre, utilizza i log del flusso di contatti per risolvere i problemi e isolare i punti in cui si verificano errori.

Esportazioni del flusso di contatti

Per le istruzioni relative all'esportazione dei flussi, consulta la sezione Come importare/esportare flussi.

Utilizza le esportazioni per comprendere meglio i flussi di contatti:

  • Osserva come la chiamata attraversa il flusso.
  • Correla i log del flusso di contatti.
  • Riproduci il problema in un ambiente di sperimentazione (sandbox).

Parametri di Amazon CloudWatch per Amazon Connect

Per ulteriori informazioni, consulta la sezione Monitoraggio dell'istanza tramite CloudWatch.

Utilizza i parametri ContactFlowErrors e ContactFlowFatalError per monitorare e risolvere gli eventi correlati ai flussi di contatti:

  • Il parametro ContactFlowFatalError indica il numero di volte in cui un flusso non è stato eseguito a causa di un errore di sistema. Ad esempio, un'interruzione di Amazon Connect.
  • Il parametro ContactFlowErrors indica il numero di volte in cui il ramo di errore viene eseguito per un flusso di contatti.

Per risolvere gli errori del flusso di contatti, identifica tramite CloudWatch Logs Insights quale blocco del flusso di contatti segue il ramo di errore. Quindi, utilizza il blocco per identificare la causa principale dell'errore.

Risoluzione

Innanzitutto, esegui una query per visualizzare gli eventi di errore correlati:

1.    Aprire la console Amazon CloudWatch.

2.    Nel pannello di navigazione, scegli Log Insights.

3.    Seleziona il nome del gruppo di log per i log delle istanze di Amazon Connect. Il formato è /aws/connect/yourinstancename.

4.    Nell'angolo in alto a destra,specifica una scala cronologica relativa alla query.

5.    Esegui la seguente query per un intervallo di tempo specifico:

fields @timestamp, @message
| filter @message like 'Results'
| parse @message '"Results":"*","ContactId":"*","ContactFlowId":"*","ContactFlowName":"*","ContactFlowModuleType":"*"' as Results, ContactId, ContactFlowId, ContactFlowName, BlockType
| filter Results like 'rror' or Results like 'ailed' or Results like 'imeout' or Results like 'xception' or Results like 'No prompt provided' or Results like 'Instance has reached concurrent Lambda thread access limit' or Results like 'nsupported' or Results like 'nvalid' or Results like 'not found' or Results like 'execution limit reached'
| sort @timestamp asc
| display Timestamp, Results, ContactId, ContactFlowId, ContactFlowName, BlockType

-oppure-

Esegui la seguente query per un ID di contatto specifico:

Nota: sostituisci il valore del ContactID con il tuo ID di contatto.

fields @timestamp, @message
| sort @timestamp desc
| filter ContactID = "162faf0b-4e68-4a4b-bbde-96c9631f2a95"

Quindi, per risolvere l'errore del flusso di contatti, consulta le seguenti risorse:

  • Dettagli di configurazione di CloudWatch Alarm per identificare quale parametro (ContactFlowErrors o ContactFlowFatalError) ha configurato l'allarme e i flussi di contatto ad esso associati. Se il parametro è ContactFlowFatalError, potrebbe trattarsi di un problema di servizio poiché il flusso non è stato eseguito a causa di un errore di sistema. Se il parametro che configura l'allarme è ContactFlowErrors, ciò indica che un blocco di contatti è stato indirizzato lungo il ramo di errore.
  • Log correlati al flusso di contatti interessato per identificare quale blocco ha prodotto l'errore. Per ulteriori informazioni sui blocchi di flusso, consulta la sezione Definizioni dei blocchi di flusso.

A volte, i blocchi del flusso di contatti generano errori in CloudWatch ma non dispongono dei log di CloudWatch corrispondenti. Per una tabella dei blocchi di contatti più comuni, consulta l'Appendice nel workshop Risoluzione degli errori del flusso di contatti in Amazon Connect.

Errori di AWS Lambda nei flussi di contatti

Gli errori più comuni nei flussi di contatti si verificano con il blocco Attiva Funzione Lambda. Questo blocco del flusso di contatti attiva AWS Lambda e, facoltativamente, restituisce coppie chiave-valore utilizzabili per impostare gli attributi dei contatti.

Per esaminare gli errori della funzione Lambda, esegui la seguente query in CloudWatch Logs Insights:

fields @timestamp, @message
| sort @timestamp desc
| filter Results LIKE "Error"

Dovresti visualizzare un output simile al seguente:

{
    "Results": "The Lambda Function Returned an Error.",
    "ContactId": "alebb22a-93c4-4f90-8f22-b3718c4578E0",
    "ContactFlowId": "contact-flow-id",
    "ContactFlowName": "chat",
    "ContactFlowModuleType": "InvokeExternalResource",
    "Timestamp": "2023-12-20T14:14:13.794Z",
    "Parameters": {
        "FunctionARN": "arn:aws:lambda:us-west-2:1099999:function:Connect-Wallboard-Historical-Metrics",
    },
 "TimeLimit": "3000"
}

Il tipo ContactFlowModule di InvokeExternalResource interessato si riferisce a una funzione Lambda, al nome del flusso di contatti e a un errore. Trova la funzione Lambda interessata. Quindi, correla i timestamp, o l'ID di contatto, per ottenere l'evento esatto che ha causato l'errore nei log di esecuzione di Lambda.

Eccezioni riguardanti l'accesso negato Di seguito è riportato un esempio di errore nei log del flusso di contatti causato dal blocco InvokeExternalResource:

{
    "Results": "Status Code: 403; Error Code: AccessDeniedException; RequestID: 435c21cc-19d8-4847-864e-e32867fe3a70
    "ContactId": "alebb22a-93c4-4f90-8f22-b3718c4578E0",
    "ContactFlowId": " arn:aws:lambda:us-west-2:1099999/contact-flow/65569e69-5c67-4061-8776-fd1d501c4838",
}

L'errore «Accesso negato» indica che il flusso di contatti non ha accesso per attivare la funzione Lambda. Per i passaggi dettagliati sull'aggiunta di una funzione all'istanza, consulta la sezione Aggiungere una funzione Lambda alla tua istanza Amazon Connect.

Non esiste un RequestId che leghi i messaggi di log di Amazon Connect per i flussi di contatti ai log di esecuzione di Lambda. Se le funzioni Lambda stampano l'evento di attivazione, utilizza il ContactId per correlare i log del flusso di contatti e i log di esecuzione della funzione Lambda. Se la funzione non stampa l'evento di attivazione, utilizza il timestamp nei log del flusso di contatti per filtrare i log di esecuzione della funzione Lambda.

Se il bloccoAttiva Funzione Lambda restituisce un errore ma non compare nessuna voce corrispondente nelle funzioni Lambda, verifica le seguenti configurazioni:

  • Il payload Lambda potrebbe essere NULL.
  • L'output restituito dalla funzione deve essere un oggetto piatto di coppie di chiavi e valori, con valori che includono caratteri alfanumerici, trattini e caratteri di sottolineatura.
  • La risposta della funzione Lambda non è una semplice mappa di stringhe, o la risposta è maggiore di 32k. È consigliabile testare l'output restituito dalla funzione Lambda per verificare che le funzioni vengano utilizzate correttamente quando vengono restituite ad Amazon Connect.

Potrebbe verificarsi un errore nel flusso di contatti a causa di più blocchi. Per ulteriori informazioni sui blocchi e sui motivi degli errori, consulta l'Appendice nel workshop Risoluzione degli errori del flusso di contatto in Amazon Connect.


AWS UFFICIALE
AWS UFFICIALEAggiornata un anno fa