Skip to main content

Solução de problemas de erros de rede para o GitHub Copilot

Resolva erros comuns relacionados a proxies e certificados personalizados.

Quem pode usar esse recurso?

GitHub Copilot pode ser gerenciado por meio de contas pessoais com GitHub Copilot Individual ou através de contas de organização com GitHub Copilot Business.

O GitHub Copilot é gratuito para uso de alunos, professores e mantenedores verificados de projetos populares de software livre. Se você não for aluno, professor nem mantenedor de um projeto popular de software livre, experimente o GitHub Copilot gratuitamente com uma avaliação única de 30 dias. Após a avaliação gratuita, você precisará de uma assinatura paga para uso contínuo. Para obter mais informações, confira "Sobre a cobrança para o GitHub Copilot".

Se você estiver trabalhando em equipamentos da empresa e se conectando a uma rede corporativa, talvez esteja se conectando à Internet por meio de uma VPN ou um servidor proxy HTTP. Em alguns casos, esses tipos de configurações de rede podem impedir que o GitHub Copilot se conecte ao servidor do GitHub. Para obter mais informações sobre as opções para configuração de proxies com CodeQL CLI, consulte "Definição de configurações de rede para o GitHub Copilot".

Este artigo fornece orientação para problemas comuns relacionados a proxies HTTP e certificados personalizados. Se você usar um firewall, isso também pode interferir na conexão do GitHub Copilot. Para obter mais informações, confira "Solução de problemas de configurações de firewall para GitHub Copilot".

Diagnosticar problemas de rede

Se você estiver solucionando problemas de rede, talvez seja útil fazer solicitações curl para testar sua conexão. Se você adicionar o sinalizador --verbose, essas solicitações fornecerão mais informações para diagnosticar o problema ou para compartilhar com o departamento de TI da sua empresa ou o Suporte do GitHub. Você pode entrar em contato com o Suporte do GitHub por meio do Portal de Suporte do GitHub.

Para verificar se você pode acessar pelo menos alguns dos pontos de extremidade do GitHub do seu ambiente, você pode executar o seguinte comando na linha de comando.

Shell
curl --verbose https://copilot-proxy.githubusercontent.com/_ping

Se você conseguir se conectar, deverá receber uma resposta HTTP 200.

Se você sabe que está se conectando por meio de um proxy HTTP, pode verificar se a solicitação é bem-sucedida quando feita por meio do proxy. No exemplo a seguir, substitua YOUR-PROXY-URL:PORT pelas informações do seu proxy.

Shell
curl --verbose -x http://YOUR-PROXY-URL:PORT -i -L https://copilot-proxy.githubusercontent.com/_ping

Se você receber um erro relacionado à "revogação do certificado", poderá tentar a solicitação novamente com o sinalizador --insecure. Se a solicitação só for bem-sucedida quando o sinalizador --insecure for adicionado, isso pode indicar que o GitHub Copilot só se conectará com êxito se você ignorar erros de certificado. Para obter mais informações, consulte “Solucionar problemas de erros relacionados a certificados”.

Se você estiver tendo dificuldades específicas com o Copilot Chat em seu editor, execute os comandos curl apresentados acima, mas use https://api.githubcopilot.com/_ping em vez de https://copilot-proxy.githubusercontent.com/_ping.

Observação: em 1º de fevereiro de 2024, os pontos de extremidade da API Copilot Chat que ram roteados por meio do https://copilot-proxy.githubusercontent.com foram suspensos. Em vez disso, essas solicitações passarão pelo https://api.githubcopilot.com/. Verifique se você está usando a versão mais recente da extensão do Copilot e verifique se o firewall e as configurações de rede permitem a comunicação com o https://api.githubcopilot.com.

Se você não conseguir se conectar e as solicitações curl não ajudarem a identificar o erro, talvez seja útil coletar logs de diagnóstico detalhados em seu editor. Se estiver trabalhando com o departamento de TI da sua empresa ou a Suporte do GitHub, compartilhar esses diagnósticos pode ajudar a resolver o erro. Habilitar o registro de depuração em seu editor ajudará você a compartilhar informações mais específicas. Para obter mais informações, confira "Exibir logs do GitHub Copilot em seu ambiente".

Solução de erros de proxy

Se houver um problema com a configuração do proxy, você verá o seguinte erro: GitHub Copilot could not connect to server. Extension activation failed: "read ETIMEDOUT" or "read ECONNRESET". Esse erro pode ser causado por vários problemas de rede.

Se você souber que está se conectando por meio de um proxy, verifique se o proxy está configurado corretamente em seu ambiente. Para obter mais informações, confira "Definição de configurações de rede para o GitHub Copilot".

O GitHub Copilot usa código personalizado para se conectar a proxies. Isso significa que uma configuração de proxy suportada pelo editor não é necessariamente compatível com o GitHub Copilot. Algumas causas comuns para erros relacionados a proxies são:

  • Se o URL do proxy começar com https://, ele não é compatível atualmente com o GitHub Copilot.
  • Talvez seja necessário autenticar no proxy. O GitHub Copilot oferece suporte à autenticação básica ou autenticação com Kerberos. Se você estiver usando Kerberos, verifique se você tem um tíquete válido para o serviço proxy e se está usando o nome principal de serviço correto para o serviço. Para obter mais informações, confira "Definição de configurações de rede para o GitHub Copilot".
  • O GitHub Copilot pode rejeitar certificados personalizados. Para obter mais informações, consulte “Solucionar problemas de erros relacionados a certificados”.

Dependendo da configuração do proxy, é possível encontrar erros como “falha de assinatura de certificado”, “certificado personalizado” ou “não é possível verificar o primeiro certificado”. Esses erros geralmente são causados por uma configuração de proxy corporativo que usa certificados personalizados para interceptar e inspecionar conexões seguras.

Algumas maneiras possíveis de resolver erros relacionados a certificados são:

  • Configure um proxy diferente que não intercepta conexões seguras.

  • Se você estiver usando um proxy corporativo, entre em contato com o departamento de TI para ver se ele pode configurar o proxy para não interceptar conexões seguras.

  • Verifique se os certificados personalizados estão instalados corretamente no armazenamento confiável do sistema operacional. Para obter mais informações, confira "Definição de configurações de rede para o GitHub Copilot". Se os certificados estiverem instalados em sua máquina, mas o GitHub Copilot não os estiver detectando, isso pode ajudar a conhecer os mecanismos que o GitHub Copilot usa para localizar certificados.

    • No Windows, o Copilot usa o pacote win-ca.
    • No macOS, o Copilot usa o pacote mac-ca.
    • No Linux, o Copilot verifica os arquivos /etc/ssl/certs/ca-certificates.crt e /etc/ssl/certs/ca-bundle.crt do OpenSSL padrão.
  • Configure o GitHub Copilot para ignorar erros de certificado. Nas configurações de proxy, você pode desmarcar Proxy SSL Estrito no Visual Studio Code ou selecionar Aceitar certificados não confiáveis automaticamente em um IDE JetBrains. Para obter mais informações, confira "Definição de configurações de rede para o GitHub Copilot".

    Aviso: não é recomendável ignorar erros de certificado, pois isso pode causar problemas de segurança.