Symfony 4.1: Desconsiderando Códigos HTTP Específicos nos Logs

Andréia Bohner
1 min readApr 21, 2018

--

Registrar em log o máximo de informações possível é essencial para ajudá-lo a depurar os problemas encontrados em suas aplicações. No entanto, gravar em log muita informação pode ser tão ruim quanto gravar pouca, devido a todo o “ruído” adicionado aos seus logs.

É por isso que no Symfony 4.1 foi melhorada a integração do Monolog para permitir excluir mensagens de log relacionadas a códigos HTTP específicos. Por exemplo, ao usar um handler fingers_crossed, utilize a configuração a seguir para ignorar os logs sobre erros 403 e 404:

# config/packages/monolog.yaml
monolog:
handlers:
main:
# ...
type: 'fingers_crossed'
excluded_http_codes: [403, 404]

Para necessidades mais complexas, também é possível excluir logs apenas de determinadas URLs, definidas como padrões de expressão regular:

# config/packages/monolog.yaml
monolog:
handlers:
main:
# ...
excluded_http_codes: [{ 400: ['^/foo', '^/bar'] }, 403, 404]

Se você preferir a configuração XML, o exemplo anterior seria semelhante ao seguinte:

<!-- config/packages/monolog.xml -->
<monolog:config>
<monolog:handler type="fingers_crossed" name="main" handler="...">
<!-- ... -->
<monolog:excluded-http-code code="400">
<monolog:url>^/foo</monolog:url>
<monolog:url>^/bar</monolog:url>
</monolog:excluded-http-code>
<monolog:excluded-http-code code="403" />
<monolog:excluded-http-code code="404" />
</monolog:handler>
</monolog:config>

Tradução de: New in Symfony 4.1: Ignore specific HTTP codes from logs

--

--