Intern
O que é o registo?
sobes.tech IA
Resposta da IA
O processo de registo de informações sobre eventos que ocorrem durante a execução de um programa ou sistema. Ajuda a depurar, monitorizar e analisar o funcionamento da aplicação.
Tipos de logs:
- Informações (info): Dados gerais sobre o funcionamento.
- Depuração (debug): Informação detalhada para procurar erros.
- Avisos (warning): Situações que podem levar a problemas.
- Erros (error): Erros que ocorreram e não interromperam a execução.
- Críticos (critical): Erros que levaram à paragem de parte ou de todo o sistema.
Ferramentas e abordagens:
- Interface de registo PSR-3 - padrão PHP para a interface do registo.
- Monolog - biblioteca popular para registo em PHP.
- Registo em ficheiros, bases de dados, serviços externos (por exemplo, Sentry, ELK).
Exemplo de uso com PSR-3:
<?php
use Psr\Log\LoggerInterface;
class MyClass
{
private LoggerInterface $logger;
public function __construct(LoggerInterface $logger)
{
$this->logger = $logger;
}
public function doSomething(): void
{
$this->logger->info('Início de doSomething', ['context_data' => 'value']);
try {
// ... código de execução
} catch (\Exception $e) {
$this->logger->error('Erro ao executar doSomething', [
'exception' => $e,
'user_id' => 123
]);
}
$this->logger->debug('Fim de doSomething');
}
}