Como Monitorar o Tamanho do Arquivo com Bencher


O Bencher suporta os dispositivos de medição de desempenho mais populares de forma nativa. Por vezes, no entanto, você deseja medir o tamanho dos seus entregáveis em si, como o tamanho binário do seu executável. Sorte a sua, o Bencher também suporta o rastreamento do tamanho de arquivo. A maneira mais fácil de rastrear o tamanho de um arquivo é usar o subcomando da CLI bencher run com a opção --file-size. A opção --file-size espera um caminho de arquivo para o arquivo cujo tamanho será medido. Por baixo dos panos, bencher run apresenta os resultados como Bencher Metric Format (BMF) JSON. Portanto, é uma boa prática usar explicitamente o adaptador json.

Se você tivesse um script localizado em ./my_build_script.sh que construísse seu binário no caminho ./path/to/my_binary, então você poderia acompanhar o tamanho deste arquivo binário com bencher run e o adaptador json. Isso funcionaria tanto com um comando de benchmark quanto sem ele.

Com um comando de benchmark:

Terminal window
bencher run --file-size ./path/to/my_binary --adapter json ./my_build_script.sh

Sem um comando de benchmark:

Terminal window
./my_build_script.sh && bencher run --file-size ./path/to/my_binary --adapter json

Em qualquer caso, o JSON BMF gerado seria assim, se my_binary tivesse um tamanho de 42 bytes:

{
"my_binary": {
"file-size": {
"value": 42.0
}
}
}

Neste exemplo, a chave my_binary é o nome do arquivo binário. É usada como o nome do Benchmark. O objeto my_binary contém a chave file-size. file-size é o slug para a Medida de Tamanho de Arquivo integrada Measure. A Medida de Tamanho de Arquivo não é criada por padrão para todos os Projetos. No entanto, quando você usa a Medida de Tamanho de Arquivo, ela será automaticamente criada para seu Projeto. O objeto Medida de Tamanho de Arquivo contém uma Métrica com o valor do tamanho do arquivo em bytes, 42.0.


🐰 Parabéns! Você aprendeu como monitorar o tamanho do seu arquivo! 🎉


Continue: Como Monitorar Benchmarks no CI ➡

🤖 Este documento foi gerado automaticamente pelo OpenAI GPT-4. Pode não ser preciso e pode conter erros. Se você encontrar algum erro, abra um problema no GitHub.


Published: Mon, May 13, 2024 at 7:14:00 AM UTC