Compartilhar via


Erro ao usar o cmdlet Search-Mailbox

Sintomas

Quando você executa o cmdlet Search-Mailbox com o LogLevel parâmetro definido como Completo, o cmdlet falha e retorna a seguinte mensagem de aviso:

AVISO: o cmdlet Search-Mailbox retorna até 10.000 resultados por caixa de correio se uma consulta de pesquisa for especificada. Para retornar mais de 10.000 resultados, use o cmdlet New-MailboxSearch ou o console In-Place eDiscovery &Hold no Centro de Administração do Exchange.
Não é possível salvar as alterações feitas em um item a ser armazenado.
+ CategoryInfo : InvalidArgument: (:) [], ObjectNotFoundException
+ FullyQualifiedErrorId: [Server=<server_name>,RequestId=<request_id>,TimeStamp=<date_and_time>] [FailureCategory =Cmdlet-ObjectNotFoundException] 1227BC9F
+ PSComputerName: server_name.contoso.com

No entanto, se você executar o cmdlet tendo o LogLevel parâmetro definido como Básico, a pesquisa será bem-sucedida.

Motivo

Esse problema ocorrerá se uma política de retenção for definida na caixa de correio de destino especificada no Search-Mailbox cmdlet. O cmdlet cria uma mensagem de email na caixa de correio de destino quando é executado por ter o LogLevel parâmetro especificado e anexa à mensagem um arquivo de log que inclui os resultados da pesquisa. No entanto, a política de retenção modifica essa mensagem de email logo após sua criação. Portanto, o cmdlet não pode anexar o arquivo de log e isso dispara o aviso.

Solução Alternativa

Para contornar esse problema, use um dos métodos a seguir para fazer a pesquisa.

Método 1: Executar o cmdlet New-MailboxSearch

New-MailboxSearch -Name <search_name> -SourceMailboxes mailbox1@contoso.com -TargetMailbox admin1@contoso.com -SearchQuery 'Subject:"Quarterly Results"' -LogLevel Full

Nota: O cmdlet New-MailboxSearch não remove os resultados da pesquisa da caixa de correio de origem.

Método 2: executar os cmdlets New-ComplianceSearch e New-ComplianceSearchAction

  1. Para criar uma pesquisa de conformidade, execute o cmdlet New-ComplianceSearch :

    New-ComplianceSearch -Name <search_name> -ExchangeLocation mailbox1@contoso.com -ContentMatchQuery 'Subject:"Quarterly Results"' -LogLevel Full
    
  2. Para criar uma ação para a pesquisa de conformidade, execute um dos seguintes cmdlets New-ComplianceSearchAction :

    New-ComplianceSearchAction -SearchName <search_name> -Preview
    
    New-ComplianceSearchAction -SearchName <search_name> -Purge -PurgeType SoftDelete
    
    New-ComplianceSearchAction -SearchName <search_name> -Purge -PurgeType HardDelete
    

    Nota: Use o Purge parâmetro para remover os resultados da pesquisa da caixa de correio de origem.

Método 3: remover a política de retenção da caixa de correio de destino

Observação

Esse método pode causar perda inesperada de dados para a caixa de correio.

  1. Para remover a política de retenção, execute o seguinte cmdlet:

    Set-Mailbox admin1@contoso.com -RemoveManagedFolderAndPolicy
    
  2. Para processar a caixa de correio de destino imediatamente, execute o seguinte cmdlet para acionar o Assistente de Pasta Gerenciada:

    Start-ManagedFolderAssistant admin1@contoso.com
    
  3. Execute o Search-Mailbox cmdlet novamente.