O365 – Public Folder – emails sendo removidos de tempos em tempos

By: Caio Ribeiro César

As Public Folders (PFs) voltaram. Elas já estão funcionando faz um tempo e alguns clientes que antes não migravam para a cloud devido a esta necessidade, hoje já estão migrados ou no processo de migração.

A nova arquitetura de Public Folder funciona baseada no Exchange 2013: mailbox. Não utilizamos mais “Databases” para Public Folders – elas são mailboxes, gerenciadas pelo nosso time de produto para expansão de tamanho, quota, etc. Com a nova arquitetura de Public Folder, temos também uma melhor gerência de storage e uma excelente high availability (já que elas são armazenadas em DAGs).

Os admins de O365 devem se preocupar apenas com as migrações de PFs de ambientes on-premises e outras questões, como replica e criação da estrutura de pastas.

Utilizamos Public Folders para possuir um histórico de conversas públicas, para que os dados fiquem disponíveis para um grupo específico de usuários (ou todos). Para mais informações de recomendações sobre dados vs. soluções assista ao nosso vídeo, que também explica a teoria da migração de PFs onpremises > cloud.

Vamos ao problema. Emails de Public Folders estão sendo removidos de tempos em tempos, todos os usuários possuem acesso a estrutura de PF.

O primeiro passo do suporte foi remover todos os acessos e validar se o problema persistia. Para a surpresa de todos, sem nenhum usuário efetuando o acesso na Public Folder, os dados ainda eram removidos.

A possibilidade é que o Exchange, de alguma maneira, estava removendo dados. Ao invés de capturar um store trace para esta mailbox (ou validar questões de auditoria), validamos configurações de Public Folders.

Primeiramente, configurações da organização:

clip_image002

Então, de uma PublicFolder que está tendo o problema:

clip_image004

Os valores de AgeLimit estão configurados. Conforme a man page de Exchange, o padrão destes valores é $null:

clip_image005

clip_image007

Ou seja, qualquer PublicFolder criada na organização teria o PublicFolderAgeLimit = 1 dia (a não ser que o AgeLimit tenha outro valor fixo para esta PF específica). No nosso cenário, ambos os valores estão = 1.00:00:00 .

clip_image009

clip_image011

Encontramos então o vilão. Os valores de AgeLimit e DefaultPublicFolderAgeLimit haviam sido configurados manualmente por engano - e agora iremos atualizá-los para o valor padrão.

clip_image012

clip_image014

Confirmando que os valores foram atualizados:

clip_image016

Neste exemplo acima, utilizamos o parâmetro “recurse” para validar todas as estruturas de PF da organização. Um exemplo para alterar todas as PFs existentes é concatenar os comandos, por exemplo:

Get-PublicFolder -Recurse | Set-PublicFolder -AgeLimit $null