Depuração

O Vonage Cloud Runtime permite que você depure seu código localmente, como se ele estivesse implantado na plataforma. Ele funciona iniciando um servidor de depuração remoto que redireciona as solicitações para a sua versão local. Você pode usar seu IDE para conectar um depurador, definir pontos de interrupção e acompanhar a execução do seu projeto linha por linha.

Dependências do depurador

Você precisará instalar um monitor de arquivos, por exemplo, nodemon globalmente:

npm install -g nodemon

Inicie uma sessão de depuração usando o Terminal

Edite seu arquivo de configuração (vcr.yml) para adicionar um ponto de entrada para depuração no nível raiz debug:

project:
    name: project
instance:
    ...
debug:
    name: debugger
    entrypoint: [nodemon, --inspect, index.js]

Em seguida, abra uma sessão de terminal no diretório do seu projeto e execute o comando `debug start`:

vcr debug

Isso iniciará o servidor; assim, assim que estiver pronto, você poderá começar a usar seu aplicativo. O depurador exibirá todas as solicitações recebidas e enviadas. As alterações no código que você fizer e salvar farão com que o depurador seja recarregado automaticamente.

Variáveis de ambiente injetadas

Ao executar seu projeto usando vcr debug (ou ao implantar seu projeto no Cloud Runtime), a plataforma irá inserir algumas variáveis de ambiente para você, juntamente com o environment objeto do seu arquivo de configuração.

VCR_PORT
VCR_REGION
VCR_DEBUG
VCR_CODE_DIR
VCR_REGION_ID
VCR_PRIVATE_KEY
VCR_API_REGION_ID
VCR_API_ACCOUNT_ID
VCR_API_ACCOUNT_SECRET
VCR_API_APPLICATION_ID
VCR_INSTANCE_PUBLIC_URL
VCR_INSTANCE_SERVICE_NAME

Depuração a partir do VSCode

Usando o VSCode, você pode conectar um depurador ao servidor para definir pontos de interrupção e executar o código passo a passo. Para isso, clique no Executar e depurar botão, depois criar um launch.json arquivo. Selecione nodejs como predefinição:

Run and Debug in VSCode

No launch.json arquivo: substitua todo o conteúdo do arquivo pelo seguinte:

{
    "version": "0.2.0",
    "configurations": [
        {
            "command": "npm run debug",
            "name": "Start Debugger",
            "request": "launch",
            "type": "node-terminal"
        }
    ]
}

Isso iniciará seu aplicativo usando o npm run debug execute o comando e conecte o depurador do VSCode. Seu npm run debug o comando deve ser executado vcr debug.

Clique no iniciar a depuração botão:

Start debugging button in VSCode

Assim que seu aplicativo estiver em execução e o depurador estiver conectado, você terá acesso aos controles de depuração.

Pontos de interrupção

Ao clicar à esquerda do número de uma linha, você pode definir um ponto de interrupção no seu código; assim, o programa irá parar nessa linha e permitirá que você inspecione o programa, execute passo a passo e assim por diante:

Setting a breakpoint in VSCode

Quando o ponto de interrupção for atingido, o VSCode destacará a linha em que parou e, usando o console de depuração, você poderá exibir valores do seu programa:

Using the debug console in VSCode

Como alternativa, você pode usar os controles de depuração para analisar seu código ainda mais detalhadamente, entrando e saindo de funções ou avançando além da linha atual.

Limpeza dos dados da sessão de depuração

Ao executar vcr debug, os dados da sessão são mantidos entre reinicializações por padrão (controlado pelo preserve-data campo em vcr.yml). Para limpar todos os dados da sessão armazenados durante uma sessão de depuração, execute:

vcr debug prune-sessions

Isso remove todo o estado da sessão associado à sua instância de depuração. É útil quando você deseja testar seu aplicativo a partir de um estado limpo, sem precisar reimplantá-lo.