

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Implementando as macros de registro em log da biblioteca
<a name="afr-library-logging-macros"></a>

As bibliotecas do FreeRTOS usam as seguintes macros de registro em log, listadas em ordem crescente de detalhamento.
+ `LogError`
+ `LogWarn`
+ `LogInfo`
+ `LogDebug`

Uma definição para todas as macros deve ser fornecida. As recomendações são: 
+ As macros devem oferecer suporte ao registro em log de estilo `C89`.
+ O registro em log deve ser seguro para thread. As linhas de log de várias tarefas não devem se intercalar umas com as outras.
+ O registro em log não APIs deve ser bloqueado e deve liberar o bloqueio de tarefas do aplicativo na E/S.

Consulte a [funcionalidade de registro em log](https://www.freertos.org/logging.html) em FreeRTOS.org para obter detalhes específicos de implementação. Você pode ver uma implementação neste [exemplo](https://github.com/FreeRTOS/lab-iot-reference-nxp-rt1060/tree/main/examples/common/logging).

## Teste
<a name="testing-logging"></a>
+ Execute um teste com várias tarefas para verificar se os registros não se intercalam.
+ Execute um teste para verificar se o registro APIs não está bloqueado na E/S.
+ Teste macros de registro com vários padrões, como registro em log de estilo `C89,C99`.
+ Teste as macros de registro em log definindo diferentes níveis de logs, como `Debug`, `Info`, `Error` e `Warning`.