PyTrace - Depurador de viagens no tempo para Python

Muitas vezes tenho que lidar com a depuração.

Às vezes, defino um ponto de interrupção, mas entendo que é tarde demais e precisamos começar tudo de novo.

Além disso, antes de iniciar a depuração, eu preparo os dados, limpo o banco de dados de registros desnecessários. Tudo para se esquecer de adotar um método aparentemente inofensivo e iniciar todo o processo novamente.

Complicado pelo fato de você precisar trabalhar com código legado, que às vezes é difícil de entender.

É possível entender melhor o código confuso? Mas e se pudermos entender esse código mais rapidamente do que quem o escreveu?

Conheça o

PyTrace é um rastreador de depuração de viagens no tempo

imagem

As principais diferenças do depurador tradicional:

  1. Uma sessão é gravada uma vez e você pode reproduzi-la inúmeras vezes.
  2. Agora você não pode ter medo de esquecer de clicar em Entrar, sempre pode voltar e ir para a função de interesse.
  3. Não há mais sentido em usar `print`. Todas as variáveis ​​são visíveis no inspetor a cada momento.

Além disso, usando o Flame Chart interno, você pode “mergulhar” rapidamente no método de interesse e ver o que realmente aconteceu:

imagem

[Comando] + Clique para ampliar a função de interesse
[Shift] + Clique no método, transfere por um momento, quando a função está prestes a retornar.

Tutorial de teclas de atalho:
( em formato de texto )

O que é gravado em tempo de execução:

  1. Variáveis ​​locais
  2. Valores recebidos e retornados
  3. Tempo desde o início da gravação
  4. Pilha de chamadas

Além disso, o conteúdo dos arquivos de origem é gravado no arquivo de reprodução no momento em que o depurador é iniciado.

Para experimentar seu projeto:


1. Instale o pacote pip:

pip install pycrunch-trace

2. Adicione decorador vestígio sobre o método de interesse:

from pycrunch_trace.client.api import trace

@trace
def run():
    some_code()

3. Execute o código!

A reprodução será gravada no diretório de trabalho. Ele pode ser visualizado usando o aplicativo da web: app.pytrace.com
(os dados não são enviados a lugar algum, todo o trabalho com a gravação ocorre localmente no navegador)

Geralmente, adiciono um @traceatributo aos métodos do Django View.

Demonstração interativa


Eu recomendo passar por uma demonstração interativa para se familiarizar com todos os recursos.

Referências


Github: Aplicativo da Web do

pacote Pip
para exibir sessões gravadas.

Site:

https://pytrace.com/

Vídeo da principal funcionalidade:


All Articles