Compartilhar via


Registrar em log em MSAL para Android

Os aplicativos da MSAL (Biblioteca de Autenticação da Microsoft) geram mensagens de log que podem ajudar a diagnosticar problemas e fornecer detalhes. Um aplicativo pode configurar o registro em log com algumas linhas de código, ter um controle personalizado sobre o nível de detalhes e determinar se dados pessoais e organizacionais serão registrados. Recomendamos que você crie uma implementação de registro em log da MSAL e forneça uma maneira para os usuários enviarem logs quando estiverem com problemas de autenticação.

Níveis de log

A MSAL fornece vários níveis de detalhes de log:

  • LogAlways: nenhuma filtragem de nível é feita neste nível de log. As mensagens de log de todos os níveis serão registradas.
  • Crítico: logs que descrevem uma falha irrecuperável do aplicativo ou do sistema ou uma falha catastrófica que exige atenção imediata.
  • Erro: indica que algo deu errado e um erro foi gerado. Utilizado para depuração e identificação de problemas.
  • Aviso: é destinado a diagnosticar e identificar problemas, mesmo que não tenha havido necessariamente um erro ou falha.
  • Informativo: a MSAL registrará em log os eventos destinados a fins informativos, não necessariamente voltados a depuração.
  • Detalhado (padrão): a MSAL registra em log os detalhes completos do comportamento da biblioteca.

Observação

Nem todos os níveis de log estão disponíveis para todos os SDKs da MSAL

Dados pessoais e organizacionais

Por padrão, o agente da MSAL não captura dados pessoais ou organizacionais altamente confidenciais. A biblioteca oferece a opção para habilitar o registro em log de dados pessoais e organizacionais, se você optar por fazer isso.

As seções a seguir fornecem mais detalhes sobre o log de erros da MSAL para seu aplicativo.

Registrar em log em MSAL para Android usando Java

Ative o logon na criação do aplicativo Criando um retorno de chamada de log. O retorno de chamada usa estes parâmetros:

  • tag é uma cadeia de caracteres passada para o retorno de chamada pela biblioteca. Ele é associado à entrada de log e pode ser usado para classificar mensagens de registro em log.
  • logLevel permite que você decida qual nível de registro em log deseja. Os níveis de log compatíveis são: Error, Warning, Info e Verbose.
  • message é o conteúdo da entrada de log.
  • containsPII Especifica se as mensagens que contêm dados pessoais ou dados organizacionais são registradas. Por padrão, ele fica definido como false para que seu aplicativo não registre dados pessoais. Se containsPII é true, esse método receberá uma mensagem duas vezes: uma vez com o parâmetro containsPII definido para false e message sem dados pessoais, e a segunda vez com o parâmetro containsPii definido para true e a mensagem pode conter dados pessoais. Em alguns casos (quando a mensagem não contém dados pessoais), a mensagem será a mesma.
private StringBuilder mLogs;

mLogs = new StringBuilder();
Logger.getInstance().setExternalLogger(new ILoggerCallback()
{
   @Override
   public void log(String tag, Logger.LogLevel logLevel, String message, boolean containsPII)
   {
      mLogs.append(message).append('\n');
   }
});

Por padrão, o agente da MSAL não captura nem registra informações de identificação pessoal ou informações de identificação organizacional. Para registrar em log o PII (Informações de Identificação Pessoal) e o OII (Informações de Identificação Organizacional):

Logger.getInstance().setEnablePII(true);

Para desabilitar o registro em log de dados pessoais e dados da organização:

Logger.getInstance().setEnablePII(false);

Por padrão, o log em logcat está desabilitado. Para habilitar:

Logger.getInstance().setEnableLogcatLog(true);

Próximas etapas

Para obter mais exemplos de código, consulte Exemplos de código da plataforma de identidade da Microsoft.