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á.
Visualização de registros de texto no Amazon CloudWatch Logs
O Amazon Lex V2 armazena registros de texto para suas conversas no Amazon CloudWatch Logs. Para ver os registros, use o console de CloudWatch registros ou a API. Para obter mais informações, consulte Pesquisar dados de log usando padrões de filtro e sintaxe de consulta do CloudWatch Logs Insights no Guia do usuário do Amazon CloudWatch Logs.
Para visualizar os logs usando o console do Amazon Lex V2
-
Abra o console do Amazon Lex V2 em https://console.aws.amazon.com/lexv2
. -
Na lista, escolha um bot.
-
No menu à esquerda, escolha Analytics e, em seguida, escolha CloudWatch métricas.
-
Veja as métricas do seu bot na página de CloudWatch métricas.
Você também pode usar o CloudWatch console ou a API para visualizar suas entradas de registro. Para localizar as entradas de log, navegue até o grupo de logs configurado para o alias. Você pode encontrar o prefixo do stream de logs para seus registros no console do Amazon Lex V2 ou usando a DescribeBotAliasoperação.
As entradas de log para uma expressão de usuário estão em vários fluxos de log. Uma expressão na conversa tem uma entrada em um dos fluxos de log com o prefixo especificado. Uma entrada no fluxo de log contém as seguintes informações.
- message-version
-
A versão do esquema de mensagem.
- bot
-
Detalhes sobre o bot com o qual o cliente está interagindo.
- mensagens
-
A resposta que o bot enviou de volta ao usuário.
- utteranceContext
-
Informações sobre o processamento desse enunciado.
-
runtimeHints
—contexto de runtime usado para transcrever e interpretar a entrada do usuário. Para ter mais informações, consulte Melhorar o reconhecimento dos valores de slots com sugestões de runtime. -
slotElicitationStyle
—Estilo de elicitação de slots usado para interpretar a entrada do usuário. Para ter mais informações, consulte Capturar valores de slots com estilos de soletração.
-
- sessionState
-
O estado atual da conversa entre o usuário e o bot. Para ter mais informações, consulte Gerenciar conversas.
- interpretations
-
Uma lista de intenções que o Amazon Lex V2 determinou que poderiam satisfazer o enunciado do usuário. Usar pontuações de confiança.
- interpretationSource
-
Indica se um slot foi resolvido pelo Amazon Lex ou pelo Amazon Bedrock. Valores: Lex | Bedrock
- sessionId
-
O identificador da sessão do usuário que está tendo a conversa.
- inputTranscript
-
Uma transcrição da entrada do usuário.
-
Para entrada de texto, esse é o texto que o usuário digitou. Para entrada DTMF, essa é a chave que o usuário insere.
-
Para entrada de voz, esse é o texto no qual o Amazon Lex V2 converte o enunciado do usuário para invocar uma intenção ou preencher um slot.
-
- rawInputTranscript
-
A transcrição bruta da entrada do usuário antes de qualquer processamento de texto. Observação: o processamento de texto é somente para localidades en-US e en-GB.
- transcriptions
-
Uma lista de possíveis transcrições da entrada do usuário. Para ter mais informações, consulte Como usar pontuações de confiança na transcrição de voz.
- rawTranscription
-
Usar pontuações de confiança na transcrição de voz. Para ter mais informações, consulte Como usar pontuações de confiança na transcrição de voz.
- missedUtterance
-
Indica se o Amazon Lex V2 conseguiu reconhecer o enunciado do usuário.
- requestId
-
O Amazon Lex V2 gerou o ID de solicitação para a entrada do usuário.
- timestamp
-
O carimbo de data e hora da entrada do usuário.
- developerOverride
-
Indica se o fluxo da conversa foi atualizado usando um hook de código de diálogo. Para mais informações sobre como usar um hook de código de diálogo, consulte Habilitando a lógica personalizada com as funções do AWS Lambda.
- inputMode
-
Indica o tipo de entrada. Pode ser áudio, DTMF ou texto.
- requestAttributes
-
Os atributos da solicitação usados ao processar a entrada do usuário.
- audioProperties
-
Se os logs de conversas de áudio estiverem ativados e a entrada do usuário estiver no formato de áudio, inclua a duração total da entrada de áudio, a duração da voz e a duração do silêncio no áudio. Também inclui um link para o arquivo de áudio.
- bargeIn
-
Indica se a entrada do usuário interrompeu a resposta anterior do bot.
- responseReason
-
O motivo pelo qual uma resposta foi gerada. Pode ser um dos seguintes:
-
UtteranceResponse
– resposta à entrada do usuário -
StartTimeout
– resposta gerada pelo servidor quando o usuário não forneceu a entrada -
StillWaitingResponse
– resposta gerada pelo servidor quando o usuário solicita que o bot espere -
FulfillmentInitiated
– resposta gerada pelo servidor informando que o atendimento está prestes a ser iniciado -
FulfillmentStartedResponse
– resposta gerada pelo servidor informando que o atendimento foi iniciado -
FulfillmentUpdateResponse
– resposta periódica gerada pelo servidor enquanto o atendimento está em andamento -
FulfillmentCompletedResponse
– resposta gerada pelo servidor quando o atendimento é concluído.
-
- operationName
-
A API usada para interagir com o bot. Pode ser
PutSession
,RecognizeText
,RecognizeUtterance
ouStartConversation
.
{ "message-version": "2.0", "bot": { "id": "string", "name": "string", "aliasId": "string", "aliasName": "string", "localeId": "string", "version": "string" }, "messages": [ { "contentType": "PlainText | SSML | CustomPayload | ImageResponseCard", "content": "string", "imageResponseCard": { "title": "string", "subtitle": "string", "imageUrl": "string", "buttonsList": [ { "text": "string", "value": "string" } ] } } ], "utteranceContext": { "activeRuntimeHints": { "slotHints": { "string": { "string": { "runtimeHintValues": [ { "phrase": "string" }, { "phrase": "string" } ] } } } }, "slotElicitationStyle": "string" }, "sessionState": { "dialogAction": { "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot", "slotToElicit": "string" }, "intent": { "name": "string", "slots": { "string": { "value": { "interpretedValue": "string", "originalValue": "string", "resolvedValues": [ "string" ] } }, "string": { "shape": "List", "value": { "originalValue": "string", "interpretedValue": "string", "resolvedValues": [ "string" ] }, "values": [ { "shape": "Scalar", "value": { "originalValue": "string", "interpretedValue": "string", "resolvedValues": [ "string" ] } }, { "shape": "Scalar", "value": { "originalValue": "string", "interpretedValue": "string", "resolvedValues": [ "string" ] } } ] } }, "kendraResponse": { // Only present when intent is KendraSearchIntent. For details, see // https://docs.aws.amazon.com/kendra/latest/dg/API_Query.html#API_Query_ResponseSyntax }, "state": "InProgress | ReadyForFulfillment | Fulfilled | Failed", "confirmationState": "Confirmed | Denied | None" }, "originatingRequestId": "string", "sessionAttributes": { "string": "string" }, "runtimeHints": { "slotHints": { "string": { "string": { "runtimeHintValues": [ { "phrase": "string" }, { "phrase": "string" } ] } } } } }, "dialogEventLogs": [ { // only for conditional "conditionalEvaluationResult":[ // all the branches until true { "conditionalBranchName": "string", "expressionString": "string", "evaluatedExpression": "string", "evaluationResult": "true | false" } ], "dialogCodeHookInvocationLabel": "string", "response": "string", "nextStep": { "dialogAction": { "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot", "slotToElicit": "string" }, "intent": { "name": "string", "slots": { } } } ] "interpretations": [ { "interpretationSource": "Bedrock | Lex", "nluConfidence": "string", "intent": { "name": "string", "slots": { "string": { "value": { "originalValue": "string", "interpretedValue": "string", "resolvedValues": [ "string" ] } }, "string": { "shape": "List", "value": { "interpretedValue": "string", "originalValue": "string", "resolvedValues": [ "string" ] }, "values": [ { "shape": "Scalar", "value": { "interpretedValue": "string", "originalValue": "string", "resolvedValues": [ "string" ] } }, { "shape": "Scalar", "value": { "interpretedValue": "string", "originalValue": "string", "resolvedValues": [ "string" ] } } ] } }, "kendraResponse": { // Only present when intent is KendraSearchIntent. For details, see // https://docs.aws.amazon.com/kendra/latest/dg/API_Query.html#API_Query_ResponseSyntax }, "state": "InProgress | ReadyForFulfillment | Fulfilled | Failed", "confirmationState": "Confirmed | Denied | None" }, "sentimentResponse": { "sentiment": "string", "sentimentScore": { "positive": "string", "negative": "string", "neutral": "string", "mixed": "string" } } } ], "sessionId": "string", "inputTranscript": "string", "rawInputTranscript": "string", "transcriptions": [ { "transcription": "string", "rawTranscription": "string", "transcriptionConfidence": "number", }, "resolvedContext": { "intent": "string" }, "resolvedSlots": { "string": { "name": "slotName", "shape": "List", "value": { "originalValue": "string", "resolvedValues": [ "string" ] } } } } ], "missedUtterance": "bool", "requestId": "string", "timestamp": "string", "developerOverride": "bool", "inputMode": "DTMF | Speech | Text", "requestAttributes": { "string": "string" }, "audioProperties": { "contentType": "string", "s3Path": "string", "duration": { "total": "integer", "voice": "integer", "silence": "integer" } }, "bargeIn": "string", "responseReason": "string", "operationName": "string" }
O conteúdo da entrada de log depende do resultado de uma transação e da configuração do bot e da solicitação.
-
Os campos
intent
,slots
eslotToElicit
não aparecerão em uma entrada se o campomissedUtterance
fortrue
. -
O campo
s3PathForAudio
não aparecerá se os logs de áudio estiverem desativados ou se o campoinputDialogMode
forText
. -
O campo
responseCard
só aparecerá quando você tiver definido um cartão de resposta para o bot. -
O mapa
requestAttributes
só aparecerá se você tiver especificado atributos de solicitação na solicitação. -
O campo
kendraResponse
só está presente quando oAMAZON.KendraSearchIntent
faz uma solicitação para pesquisar um índice do Amazon Kendra. -
O campo
developerOverride
é verdadeiro quando uma intenção alternativa foi especificada na função do Lambda do bot. -
O mapa
sessionAttributes
só aparecerá se você tiver especificado atributos de sessão na solicitação. -
O mapa
sentimentResponse
só aparecerá se você configurar o bot para retornar valores de sentimento.
nota
O formato de entrada pode mudar sem uma alteração correspondente em messageVersion
. Seu código não deve gerar um erro se novos campos estiverem presentes.