메시지 디버깅 켜기
게이트웨이가 개발 중인 동안 메시지를 디버깅하여 Lambda 함수 오류, 송신 권한 부여자 오류, 대상 사양 파라미터 검증 오류 등 대상 구성 문제에 대한 세부 정보를 반환할 수 있습니다. 디버깅 메시지를 켠 후 게이트웨이를 호출할 때 문제가 발생하면 응답이 디버깅에 도움이 되는 메시지를 반환합니다.
디버깅 메시지를 켜려면 다음 중 하나를 수행합니다.
-
AgentCore CLI를 사용하여 게이트웨이를 생성하면 디버깅이 자동으로 활성화됩니다.
-
AWS Management Console을 사용하여 게이트웨이를 생성하는 경우 디버깅이 기본적으로 활성화됩니다. 옵션은 게이트웨이 세부 정보 섹션의 추가 구성 아래에 있습니다.
-
AWS CLI 또는 AWS SDK를 사용하는 경우 CreateGateway 또는 UpdateGateway 요청을 수행할
DEBUG때exceptionLevel값을 로 설정합니다.
게이트웨이 디버깅이 완료되면 게이트웨이를 업데이트하여 디버깅 메시지를 비활성화하여 최종 사용자에게 보내는 메시지에 지정되지 않은 내부 오류만 표시되도록 할 수 있습니다.
디버깅 메시지를 끄려면 다음 중 하나를 수행합니다.
-
AWS 관리 콘솔에서 게이트웨이를 생성하거나 편집할 때 게이트웨이 세부 정보 섹션에서 추가 구성을 확장하고 예외 수준 디버그 옆의 확인란을 선택 취소합니다.
-
AWS CLI 또는 AWS SDK에서 디버깅을 해제하도록
CreateGateway또는UpdateGateway요청할 때exceptionLevel필드를 생략합니다.
디버깅이 켜져 있고 꺼져 있는 게이트웨이 응답의 예
예를 들어, 게이트웨이가 대상으로 하는 Lambda 함수를 호출할 권한이 사용자에게 없다고 가정해 보겠습니다. 이 함수를 호출하는 요청은 디버깅이 켜져 있는지 여부에 따라 다른 메시지를 반환합니다.
-
디버깅 켜짐 - 다음 예제와 같이 콘텐츠의
text필드와 응답의_meta필드에 자세한 오류 메시지가 반환됩니다.{ "jsonrpc": "2.0", "id": 24, "result": { "content": [ { "type": "text", "text": "Access denied while invoking Lambda function arn:aws:lambda:us-west-2:123456789012:function:TestGatewayLambda. Check the permissions on the Lambda function and Gateway execution role, and retry the request." } ], "_meta": { "debug": { "type": "text", "text": "Access denied while invoking Lambda function arn:aws:lambda:us-west-2:123456789012:function:TestGatewayLambda. Check the permissions on the Lambda function and Gateway execution role, and retry the request." } }, "isError": true } } -
디버깅 끄기 - 다음 예제와 같이 응답의 콘텐츠
text필드에 일반 오류 메시지가 반환됩니다.{ "jsonrpc": "2.0", "id": 24, "result": { "content": [ { "type": "text", "text": "An internal error occurred. Please retry later." } ], "isError": true } }