Test-Mailflow

Este cmdlet está disponível somente no Exchange local.

Use o cmdlet Test-Mailflow para diagnosticar se as mensagens podem ser enviadas com sucesso e entregues na caixa de correio do sistema em um servidor de Caixa de Correio. Também é possível usar esse cmdlet para verificar que o email é enviado entre os servidores de Caixa de Correio dentro de um limite de latência definido.

Para saber mais sobre os conjuntos de parâmetros na seção Sintaxe, abaixo, consulte Exchange cmdlet syntax.

Syntax

Test-Mailflow
    [[-Identity] <ServerIdParameter>]
    [-AutoDiscoverTargetMailboxServer]
    [-ActiveDirectoryTimeout <Int32>]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-ErrorLatency <Int32>]
    [-ExecutionTimeout <Int32>]
    [-MonitoringContext <Boolean>]
    [-WhatIf]
    [<CommonParameters>]
Test-Mailflow
    -CrossPremises <Boolean>
    [-ActiveDirectoryTimeout <Int32>]
    [-CrossPremisesExpirationTimeout <EnhancedTimeSpan>]
    [-CrossPremisesPendingErrorCount <Int32>]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-ErrorLatency <Int32>]
    [-ExecutionTimeout <Int32>]
    [-MonitoringContext <Boolean>]
    [-WhatIf]
    [<CommonParameters>]
Test-Mailflow
    [[-Identity] <ServerIdParameter>]
    -TargetDatabase <DatabaseIdParameter>
    [-ActiveDirectoryTimeout <Int32>]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-ErrorLatency <Int32>]
    [-ExecutionTimeout <Int32>]
    [-MonitoringContext <Boolean>]
    [-WhatIf]
    [<CommonParameters>]
Test-Mailflow
    [[-Identity] <ServerIdParameter>]
    -TargetEmailAddress <String>
    [-TargetEmailAddressDisplayName <String>]
    [-ActiveDirectoryTimeout <Int32>]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-ErrorLatency <Int32>]
    [-ExecutionTimeout <Int32>]
    [-MonitoringContext <Boolean>]
    [-WhatIf]
    [<CommonParameters>]
Test-Mailflow
    [[-Identity] <ServerIdParameter>]
    -TargetMailboxServer <ServerIdParameter>
    [-ActiveDirectoryTimeout <Int32>]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-ErrorLatency <Int32>]
    [-ExecutionTimeout <Int32>]
    [-MonitoringContext <Boolean>]
    [-WhatIf]
    [<CommonParameters>]
Test-Mailflow
    [[-Identity] <ServerIdParameter>]
    [-ActiveDirectoryTimeout <Int32>]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-ErrorLatency <Int32>]
    [-ExecutionTimeout <Int32>]
    [-MonitoringContext <Boolean>]
    [-WhatIf]
    [<CommonParameters>]

Description

O cmdlet Test-Mailflow testa o envio, o transporte e a entrega de emails. O cmdlet verifica se cada servidor de Caixa de Correio pode enviar uma mensagem com sucesso para si mesmo. Também é possível usar esse cmdlet para verificar se a caixa de correio do sistema em um servidor de Caixa de Correio pode enviar uma mensagem com sucesso para a caixa de correio do sistema em outro servidor de Caixa de Correio. Uma caixa de correio do sistema é necessária em todos os servidores envolvidos no teste.

As mensagens de teste estão disponíveis na caixa de correio do sistema ou do usuário de destino. O assunto da mensagem é Test-Mailflow <GUID>, e o corpo da mensagem contém o texto This is a Test-Mailflow probe message.

Os resultados de Test-Mailflow são exibidos na tela. Os valores que interessam nos resultados são:

  • TestMailflowResult: os valores retornados normalmente são Êxito ou *FAILURE*.
  • MessageLatencyTime: o tempo necessário para concluir o teste (entregar a mensagem de teste). O valor usa a sintaxe hh:mm:ss.ffff, em que hh = horas, mm = minutos, ss = segundos e ffff = frações de um segundo.

Você pode gravar os resultados Test-Mailflow em um arquivo canalizando a saída para ConvertTo-Html ou ConvertTo-Csv e adicionando > <filename> ao comando. Por exemplo: Test-Mailflow -AutoDiscoverTargetMailboxServer | ConvertTo-Csv > "C:\My Documents\test-mailflow 2020-05-01.csv".

Para executar esse cmdlet, você precisa ter permissões. Embora este tópico liste todos os parâmetros do cmdlet, talvez você não tenha acesso a alguns parâmetros se eles não estiverem incluídos nas permissões atribuídas a você. Para localizar as permissões necessárias para executar qualquer cmdlet ou parâmetro em sua organização, confira Find the permissions required to run any Exchange cmdlet.

Exemplos

Exemplo 1

Test-Mailflow Mailbox1 -TargetMailboxServer Mailbox2

Este exemplo testa o fluxo de mensagens do servidor chamado Mailbox1 para o servidor chamado Mailbox2. Observe que você precisa executar esse comando enquanto estiver conectado a Mailbox1.

Exemplo 2

Test-Mailflow -TargetEmailAddress john@contoso.com

Este exemplo testa o fluxo de mensagens do servidor mailbox local em que você está executando esse comando para o endereço john@contoso.comde email .

Parâmetros

-ActiveDirectoryTimeout

O parâmetro ActiveDirectoryTimeout especifica o número de segundos decorridos até que a tarefa forneça uma mensagem informativa sobre o atraso. O valor padrão é 15 segundos.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-AutoDiscoverTargetMailboxServer

A opção AutoDiscoverTargetMailboxServer especifica se é necessário popular automaticamente uma lista de servidores de Caixa de Correio de destino para os quais enviar uma mensagem de teste. Não é preciso especificar um valor com essa opção.

A tarefa consulta o Active Directory para descobrir todos os servidores da Caixa de Correio e, em seguida, envia a cada servidor uma mensagem de teste.

Ao usar essa opção, você não pode usar os parâmetros CrossPremises, TargetDatabase, TargetEmailAddress nem TargetMailboxServer.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-Confirm

A opção Confirm especifica se a solicitação de confirmação deve ser mostrada ou ocultada. Como essa opção afeta o cmdlet dependerá do fato de o cmdlet exigir ou não confirmação antes de continuar.

  • Cmdlets destrutivos (por exemplo, cmdlets Remove-*) têm uma pausa interna que força você a reconhecer o comando antes de prosseguir. Para estes cmdlets, você pode pular o pedido de confirmação usando esta sintaxe exata: -Confirm:$false.
  • A maioria dos outros cmdlets (por exemplo, cmdlets New-* e Set-*) não tem uma pausa interna. Para esses cmdlets, especificar a opção Confirm sem um valor introduz uma pausa que força você a confirmar o comando antes de continuar.
Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-CrossPremises

O parâmetro CrossPremises especifica se o teste de fluxo de mensagens será conduzido no modo entre locais.

Defina este parâmetro como $true se sua organização estiver usando uma implantação entre locais e você desejar verificar o fluxo de mensagens entre locais.

Ao usar esse parâmetro, você não pode usar os parâmetros AutoDiscoverTargetMailboxServer, TargetDatabase, TargetEmailAddress nem TargetMailboxServer.

Type:Boolean
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-CrossPremisesExpirationTimeout

O parâmetro CrossPremisesExpirationTimeout é usado quando esse cmdlet é executado por agentes do Microsoft System Center Operations Manager 2007 para monitoramento assíncrono. Não é recomendável o uso deste parâmetro ao executar esse cmdlet manualmente.

Type:EnhancedTimeSpan
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-CrossPremisesPendingErrorCount

O parâmetro CrossPremisesPendingErrorCount é usado quando esse cmdlet é executado por agentes do System Center Operations Manager 2007 para monitoramento assíncrono. Não é recomendável o uso deste parâmetro ao executar esse cmdlet manualmente.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-DomainController

O parâmetro DomainController especifica o controlador de domínio que é usado por esse cmdlet para ler dados ou gravar dados no Active Directory. Você identifica o controlador de domínio por seu FQDN (nome de domínio totalmente qualificado). Por exemplo, dc01.contoso.com.

Type:Fqdn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-ErrorLatency

O parâmetro ErrorLatency especifica por quanto tempo aguardar a entrega de uma mensagem de teste antes de um evento de erro ser registrado em log no Microsoft System Center Operations Manager 2007. O valor padrão quando uma mensagem de teste é enviada para o servidor de Caixa de Correio é de 15 segundos e 180 quando uma mensagem de teste é enviada para um servidor de Caixa de Correio remoto.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-ExecutionTimeout

O parâmetro ExecutionTimeout especifica o tempo máximo durante o qual essa tarefa pode ser executada, antes que o teste seja determinado como falho. Se nenhuma mensagem de teste ou notificação de entrega chegar antes de esse tempo expirar, a tarefa será encerrada e um erro será relatado. Quando a tarefa é executada no Shell de Gerenciamento do Exchange, a configuração padrão é de 240 segundos. Quando o parâmetro MonitoringContext for usado, a configuração padrão será de 15 segundos.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-Identity

O parâmetro Identity especifica o nome do servidor de Caixa de Correio de origem do qual uma mensagem de teste é enviada. É possível usar qualquer valor que identifique o servidor com exclusividade. Por exemplo:

  • Nome
  • FQDN
  • DN (nome diferenciado)
  • DN Herdado do Exchange

Se você não usar este parâmetro, o servidor de Caixa de Correio local será usado.

Type:ServerIdParameter
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-MonitoringContext

O parâmetro MonitoringContext especifica se é preciso incluir os eventos de monitoramento e contadores de desempenho associados nos resultados. Os valores válidos são:

  • $true: os contadores de desempenho e eventos de monitoramento são incluídos nos resultados do comando. Normalmente, você inclui os eventos de monitoramento e contadores de desempenho nos resultados quando a saída é passada para o SCOM (Microsoft System Center Operations Manager).
  • $false: os contadores de monitoramento e desempenho não estão incluídos nos resultados do comando. Esse é o valor padrão.
Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-TargetDatabase

O parâmetro TargetDatabase especifica o banco de dados da caixa de correio para o qual as mensagens de teste são enviadas. É possível usar qualquer valor que identifique o banco de dados com exclusividade. Por exemplo:

  • Nome
  • DN (nome diferenciado)
  • GUID

Você não pode usar esse parâmetro com os parâmetros AutoDiscoverTargetMailboxServer, CrossPremises, TargetEmailAddress ou TargetMailboxServer.

Type:DatabaseIdParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-TargetEmailAddress

O parâmetro TargetEmailAddress especifica o endereço SMTP da caixa de correio para o qual mensagens de teste são enviadas. Use esse parâmetro para enviar mensagens de teste para um servidor de Caixa de Correio em uma floresta remota. Se esse parâmetro for usado, o teste sempre é um teste remoto.

Ao usar esse parâmetro, você não pode usar os parâmetros AutoDiscoverTargetMailboxServer, CrossPremises, TargetDatabase nem TargetMailboxServer.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-TargetEmailAddressDisplayName

O parâmetro TargetEmailAddressDisplayName especifica um nome de exibição personalizado que é usado em eventos e relatórios no Microsoft System Center Operations Manager 2007 quando o parâmetro TargetEmailAddress é usado. Se você não usar o parâmetro TargetEmailAddressDisplayName, os eventos e relatórios usarão o valor de endereço de email especificado pelo parâmetro TargetEmailAddress.

Esse parâmetro está disponível apenas com o parâmetro TargetEmailAddress e não tem efeito na saída do cmdlet fora do Microsoft System Center Operations Manager.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-TargetMailboxServer

O parâmetro TargetMailboxServer especifica um ou mais servidores de caixa de correio na organização local do Exchange para enviar mensagens de teste. É possível usar qualquer valor que identifique o servidor com exclusividade. Por exemplo:

  • Nome
  • FQDN
  • DN (nome diferenciado)
  • DN Herdado do Exchange

Ao usar esse parâmetro, você não pode usar os parâmetros AutoDiscoverTargetMailboxServer, CrossPremises, TargetDatabase nem TargetEmailAddress.

Type:ServerIdParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-WhatIf

A opção WhatIf simula as ações do comando. Você pode usar essa opção para exibir as alterações que ocorreriam sem realmente aplicar essas alterações. Não é preciso especificar um valor com essa opção.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

Entradas

Input types

Para ver os tipos de entrada que este cmdlet aceita, confira Tipos de entrada e saída de cmdlet. Se o campo Tipo de Entrada de um cmdlet estiver em branco, isso significa que o cmdlet não aceita dados de entrada.

Saídas

Output types

Para ver os tipos de retorno, também conhecidos como tipos de saída, que este cmdlet aceita, consulte Tipos de entrada e saída de cmdlet. Se o campo Tipo de Saída estiver em branco, o cmdlet não retorna dados.