Conceito - Registro em log no MIP SDK

A solução de problemas de aplicativos personalizados que consomem o MIP SDK começa com a inspeção de logs de mip. O local do log MIP é configurado na criação do MipContext e pode ser consultado com a extensão de arquivo *.miplog. Os aplicativos e exemplos da Microsoft armazenam logs MIP no caminho do aplicativo\APP_DATA\mip_data.

Mascarar dados confidenciais em logs MIP

Os logs no MIP SDK não mascaram conteúdo confidencial que pode ser pessoalmente identificável para um cliente sem configuração extra.

Dados confidenciais comuns em logs do MIP SDK:

  • Nomes de e-mail
  • Nomes de ficheiros
  • Nomes dos rótulos
  • Endereços IP
  • Endereços MAC

Para mascarar conteúdo confidencial em todos os arquivos miplog gerados pelo MIP SDK, crie um novo campo no arquivo de .json de configuração ou configure em MipConfiguration.

Arquivo de configuração

Os arquivos de configuração são o caminho recomendado para definir configurações personalizadas no MIP SDK e estão disponíveis em todas as plataformas suportadas. Para mascarar PII em arquivos de log MIP, use o seguinte método.

  1. Crie um arquivo de configuração acessível pelo MIP SDK para configurações personalizadas chamadas mip_config.json e armazene o arquivo no seguinte caminho MipConfiguration .
mipConfiguration->GetPath()/mip
  1. Adicione um novo campo para mip_config.json definir o AllowPii campo como false.
{"MipLogger":{"MaxLogFilesSizeMb":40,"MaxLogFileCount":10,"AllowPii":false}}

Uma vez configurado, o conteúdo confidencial é mascarado em todos os novos logs MIP gerados pelo MIP SDK.

Configurar em MipConfiguration

Para mascarar PII em arquivos de log MIP com MipConfiguration, crie um novo MipConfiguration objeto para passar MipContext com novos valores para as configurações personalizadas.

Este método é suportado apenas para C++ e C#. Recomenda-se que os desenvolvedores que usam a API C ou wrappers Java criem um arquivo de configuração.

auto mipConfiguration = make_shared<mip::MipConfiguration>(appInfo, "mip_data", mip::LogLevel::Trace, false);
    auto loggerConfiguration = make_shared<mip::LoggerConfiguration>();
    loggerConfiguration->isPiiAllowed = false;
    mipConfiguration->SetLoggerConfiguration(loggerConfiguration);
    auto mipContext = MipContext::Create(mipConfiguration);
MipConfiguration mipConfiguration = new MipConfiguration(appInfo, "mip_data", LogLevel.Trace, false);
  mipConfiguration.LoggerConfigurationOverride = new LoggerConfiguration(10, 40, false);
  var mipContext = MIP.CreateMipContext(mipConfiguration);