Командлет Test-Mailflow используется для проверки возможности успешной отправки почты из системного почтового ящика на компьютере с установленной ролью сервера почтовых ящиков, а также доставки почты в этот ящик. Можно также использовать командлет для проверки отправки почты между серверами почтовых ящиков в пределах определенного порога задержки.

Синтаксис

Test-Mailflow [-Identity <ServerIdParameter>] [-ActiveDirectoryTimeout <Int32>] [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-ErrorLatency <Int32>] [-ExecutionTimeout <Int32>] [-MonitoringContext <$true | $false>] [-WhatIf [<SwitchParameter>]]
Test-Mailflow [-Identity <ServerIdParameter>] -TargetMailboxServer <ServerIdParameter> [-ActiveDirectoryTimeout <Int32>] [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-ErrorLatency <Int32>] [-ExecutionTimeout <Int32>] [-MonitoringContext <$true | $false>] [-WhatIf [<SwitchParameter>]]
Test-Mailflow [-Identity <ServerIdParameter>] -TargetEmailAddress <String> [-ActiveDirectoryTimeout <Int32>] [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-ErrorLatency <Int32>] [-ExecutionTimeout <Int32>] [-MonitoringContext <$true | $false>] [-TargetEmailAddressDisplayName <String>] [-WhatIf [<SwitchParameter>]]
Test-Mailflow [-Identity <ServerIdParameter>] -AutoDiscoverTargetMailboxServer <SwitchParameter> [-ActiveDirectoryTimeout <Int32>] [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-ErrorLatency <Int32>] [-ExecutionTimeout <Int32>] [-MonitoringContext <$true | $false>] [-WhatIf [<SwitchParameter>]]

Параметры

Параметр Обязательный Тип Описание

AutoDiscoverTargetMailboxServer

Обязательный

System.Management.Automation.SwitchParameter

Параметр AutoDiscoverTargetMailboxServer автоматически заполняет список целевых серверов почтовых ящиков для отправки тестового сообщения. Задача выполняет запрос к службе каталогов Active Directory для обнаружения всех серверов почтовых ящиков, а затем отправляет каждому серверу тестовое сообщение.

TargetEmailAddress

Обязательный

System.String

Параметр TargetEmailAddress указывает SMTP-адрес почтового ящика, в который отправляются тестовые сообщения. Используйте этот параметр для отправки тестовых сообщений на сервер почтовых ящиков в удаленном лесу. Если указан этот параметр, проверка всегда выполняется удаленно.

TargetMailboxServer

Обязательный

Microsoft.Exchange.Configuration.Tasks.ServerIdParameter

Параметр TargetMailboxServer указывает один или несколько серверов почтовых ящиков в локальной организации Exchange, в которую отправляются тестовые сообщения.

ActiveDirectoryTimeout

Необязательный

System.Int32

Параметр ActiveDirectoryTimeout указывает количество секунд до выдачи задачей администратору информационного сообщения о задержке. Значение по умолчанию: 15 секунд.

Confirm

Необязательный

System.Management.Automation.SwitchParameter

Параметр Confirm используется для приостановки команды и требует, чтобы администратор подтвердил ее выполнение. Значение по умолчанию: $true.

DomainController

Необязательный

Microsoft.Exchange.Data.Fqdn

Параметр DomainController используется, чтобы указать полное доменное имя контроллера домена, к которому будет выполнена привязка при использовании этой команды и который запишет это изменение в Active Directory.

ErrorLatency

Необязательный

System.Int32

Параметр ErrorLatency служит для указания продолжительности ожидания доставки тестового сообщения перед регистрацией ошибки в журнале MOM. По умолчанию для отправки тестового сообщения на локальный сервер почтовых ящиков установлено значение 15 секунд, на удаленный сервер почтовых ящиков — 180 секунд.

ExecutionTimeout

Необязательный

System.Int32

Параметр ExecutionTimeout указывает максимальное время выполнения задачи перед определением того, что проверка не пройдена. Если в этот период не будет получено сообщение или отчет о доставке, задача завершается и выдается ошибка. При выполнении задачи в командной консоли Exchange значение по умолчанию — 240 секунд. При использовании параметра MonitoringContext значение по умолчанию равно 15 секундам.

Identity

Необязательный

Microsoft.Exchange.Configuration.Tasks.ServerIdParameter

Параметр Identity определяет имя исходного сервера почтовых ящиков, с которого отправляется тестовое сообщение. По умолчанию указан локальный сервер почтовых ящиков.

MonitoringContext

Необязательный

System.Boolean

Параметр MonitoringContext используется, только если для наблюдения за сервером применяется MOM. Если установить значение $true, командлет заполнит объект MonitoringContext событиями и счетчиками производительности, используемыми MOM. По умолчанию значение этого параметра — $false.

TargetEmailAddressDisplayName

Необязательный

System.String

Параметр TargetEmailAddressDisplayName задает краткое имя почтового ящика, в который отправляются сообщения.

WhatIf

Необязательный

System.Management.Automation.SwitchParameter

Параметр WhatIf заставляет команду имитировать действия, которые она будет выполнять над объектом. С помощью параметра WhatIf администратор может просматривать изменения, которые могли бы произойти, без применения этих изменений. Значение по умолчанию: $true.

Подробное описание

Командлет Test-Mailflow проверяет отправку, передачу и доставку почты. Он проверяет, может ли каждый сервер почтовых ящиков успешно отправить себе сообщение. Командлет можно также использовать для проверки того, что системный почтовый ящик на одном сервере почтовых ящиков может успешно отправить сообщение системному почтовому ящику на другом сервере.

Эта задача при запуске вручную предоставляет администратору полезные сведения. Ее также можно вызвать с помощью средств наблюдения, таких как Microsoft Operations Manager (MOM), анализатор соответствия рекомендациям для Exchange и помощник по устранению неполадок Exchange. При вызове задачи средством MOM создаются предупреждения о сбоях и низкой производительности.

Командлет Test-Mailflow может выполнять локальную или удаленную проверку. Если параметры не указаны, выполняется локальная проверка и сервер отправляет тестовое сообщение электронной почты себе. Если указан параметр TargetEmailAddress, TargetMailboxServer или AutoDiscoverTargetMailboxServer, выполняется удаленная проверка. Параметры TargetEmailAddress, TargetMailboxServer и AutoDiscoverTargetMailboxServer являются взаимно исключающими.

Чтобы проверить доставку электронной почты между лесами, используйте параметр TargetEmailAddress. Чтобы проверить доставку электронной почты между серверами почтовых ящиков в одном и том же лесу Active Directory, используйте параметр TargetMailboxServer. Чтобы автоматически заполнить список целевых серверов, для которых необходимо проверить поток почты, используйте параметр AutoDiscoverTargetMailboxServer.

Если указано несколько данных параметров, параметр AutoDiscoverTargetMailboxServer имеет приоритет над параметрами TargetEmailAddress и TargetMailboxServer. Параметр TargetMailboxServer имеет приоритет над параметром TargetEmailAddress. Если выполняется локальная проверка, локальный сервер должен иметь системный почтовый ящик для каждой базы данных почтовых ящиков. Если выполняется удаленная проверка, исходный сервер и сервер назначения должны иметь системный почтовый ящик либо должен быть задан конкретный почтовый ящик с помощью параметров.

Для выполнения командлета Test-Mailflow используемой учетной записи необходимо делегировать следующую роль:

  • роль администратора сервера Exchange Server и членство в локальной группе администраторов сервера, на котором выполняется командлет.

Дополнительные сведения о разрешениях, делегировании ролей и правах, необходимых для администрирования сервера Microsoft Exchange Server 2007, см. в разделе Вопросы, связанные с разрешениями.

Типы входных данных

Типы возвращаемых данных

Командлет Test-Mailflow возвращает значения свойств, помогающие устранять неполадки, возникающие при передаче сообщений.

  • MailFlowResult   Здесь указывается, успешно ли было отправлено сообщение.

  • MessageLatencyTime   Значение этого свойства — время (в секундах), которое было затрачено на отправку тестового сообщения на принимающий сервер почтовых ящиков.

  • IsRemoteTest   Это свойство показывает, было ли тестовое сообщение отправлено не на локальный сервер почтовых ящиков, а также отправлялось ли оно на адрес электронной почты.

Ошибки

Ошибка Описание

 

Исключения

Исключения Описание

 

Пример

В первом примере описана отправка пробного сообщения с сервера Mailbox1 на сервер Mailbox2.

Во втором примере показана отправка тестового сообщения с сервера Mailbox1 на адрес электронной почты john@contoso.com. В этом примере тестовое сообщение отправляется на сервер почтовых ящиков в удаленном лесу.

Копировать код
Test-Mailflow Mailbox1 -TargetMailboxServer Mailbox2
Test-Mailflow Mailbox1 -TargetEmailAddress john@contoso.com