Инструкции по работе с сообщениями в очередях
В Exchange Server для управления сообщениями в очередях можно использовать средство просмотра очередей на панели элементов Exchange или командную консоль Exchange. Дополнительные сведения о сообщениях в очередях см. в разделе Свойства сообщения.
В этой статье рассказывается, как выполнять перечисленные ниже задачи с сообщениями в очередях.
- Удалить сообщения. Вы можете удалить сообщения из очередей с помощью нашей службы без отчета о недоставке отправителю (также известного как недоставка, уведомление о состоянии доставки, DSN или сообщение о отказе).
- Приостановка сообщений. При приостановке сообщения запрещается доставка сообщения. Оно не покинет очередь, пока доставка не будет возобновлена.
- Возобновление сообщений. Вы можете возобновить сообщение, которое в настоящее время имеет состояние Приостановлено. При этом включается доставка сообщения.
- Перенаправление сообщений. Вы можете слить сообщения из всех очередей доставки на сервере почтовых ящиков и передать эти сообщения на другой сервер почтовых ящиков.
Сведения об экспорте сообщений из очередей см. в статье Экспорт сообщений из очередей.
Что нужно знать перед началом работы
Предполагаемое время для завершения каждой процедуры: 5 минут
Чтобы найти и открыть Элементы управления Exchange, воспользуйтесь одной из указанных ниже процедур.
Windows 10: щелкните Запустить>все приложения>Microsoft Exchange Server <Version>>Exchange Toolbox.
Windows Server 2012 R2 или Windows 8.1: на начальном экране откройте представление Приложения, щелкнув стрелку вниз в левом нижнем углу или проведя пальцем вверх по центру экрана. Ярлык панели элементов Exchange находится в группе с именем Версия> Microsoft Exchange Server<.
Windows Server 2012: используйте любой из следующих методов:
- На начальном экране щелкните пустую область и введите Панель элементов Exchange.
- Откройте рабочий стол или начальный экран и нажмите клавиши Windows+Q. На панели чудо-кнопки "Поиск" введите Панель элементов Exchange.
- Откройте рабочий стол и переместите курсор в его правый верхний угол (или на начальном экране проведите пальцем влево от его правого края), чтобы отобразились чудо-кнопки. Нажмите чудо-кнопку "Поиск" и введите Панель элементов Exchange.
Когда ярлык появится в результатах, выберите его.
Сведения о том, как открыть командную консоль Exchange в локальной организации Exchange, см. в статье Open the Exchange Management Shell.
Дополнительные сведения об использовании фильтров и значений удостоверений в командной консоли Exchange см. в статье Поиск очередей и сообщений в очередях в командной консоли Exchange.
Для выполнения этой процедуры (процедур) необходимы соответствующие разрешения. Сведения о необходимых разрешениях см. в записи "Очереди" в разделе Разрешения потока обработки почты .
Сочетания клавиш для процедур, описанных в этой статье, приведены в статье Сочетания клавиш в Центре администрирования Exchange.
Совет
Возникли проблемы? Обратитесь за помощью к участникам форумов Exchange. Посетите форумы: Exchange Server, Exchange Online или Exchange Online Protection.
Удаление сообщений из очередей
Примечание.
Сообщение, отправляемое нескольким получателям, может находиться в нескольких очередях. Чтобы удалить сообщение из нескольких очередей с помощью одной операции, следует использовать фильтр. Дополнительные сведения см. в статьях Свойства сообщений в очередях и Параметры фильтрации сообщений.
Удаление сообщений из очередей с помощью средства просмотра очереди
Откройте Элементы управления Exchange и в разделе Средства для потока почты дважды щелкните Средство просмотра очереди, чтобы открыть его в новом окне.
В средстве просмотра очередей перейдите на вкладку Сообщения . Отобразится список всех сообщений на сервере, к которому вы подключены. Чтобы выполнить действие с отдельной очередью, откройте вкладку Очереди, дважды щелкните имя очереди, а затем откройте вкладку Server\Queue.
Выделите одно или несколько сообщений в списке, щелкните правой кнопкой мыши и выберите команду Удалить сообщения (с отправкой отчета о недоставке) или Удалить сообщения (без отчета о недоставке). Откроется диалоговое окно для подтверждения выбранного действия с запросом Продолжить? Нажмите кнопку Да.
Чтобы удалить все сообщения из определенной очереди, перейдите на вкладку Очереди. Выберите очередь, щелкните правой кнопкой мыши и выберите Удалить сообщения (с NDR) или Удалить сообщения (без NDR). Откроется диалоговое окно для подтверждения выбранного действия с запросом Продолжить? Нажмите кнопку Да.
Примечание.
При работе с отфильтрованным списком отображаемая страница может содержать не все элементы в фильтре. В этом случае появится запрос: Это действие повлияет на все элементы этой страницы. Чтобы расширить область применения этого действия для включения всех элементов в этом фильтре, установите следующий флажок до нажатия кнопки «OK».
Удаление сообщений с помощью командной консоли Exchange
Чтобы удалить сообщения из очередей, введите команду в следующем формате.
Remove-Message <-Identity MessageIdentity | -Filter "MessageFilter"> -WithNDR <$true | $false>
В этом примере из очереди удаляются сообщения с темой "Win Big" без отправки отчета о недоставке.
Remove-Message -Filter "Subject -eq 'Win Big'" -WithNDR $false
В этом примере из очереди "Сообщения с недостижимым местом назначения" на сервере с именем Mailbox01 удаляются сообщения с идентификатором 3. При этом отправляется отчет о недоставке.
Remove-Message -Identity Mailbox01\Unreachable\3 -WithNDR $true
Дополнительные сведения см. в статье Remove-Message.
Как проверить, все ли получилось?
Чтобы проверить, успешно ли удалены сообщения из очередей, выполните одно из указанных ниже действий.
В средстве просмотра очереди выберите очередь или создайте фильтр, чтобы убедиться, что сообщение больше не существует.
В командной оболочке Exchange замените MessageFilter фильтром, который вы использовали, или <QueueIdentity> идентификатором очереди и выполните следующие команды, чтобы убедиться, что сообщения больше не существуют:
Get-Message -Filter "MessageFilter"
Или
Get-Message -Queue <QueueIdentity>
Дополнительные сведения см. в статье Get-Message.
Приостановка доставки сообщений в очередях
Примечания.
Сообщение, отправляемое нескольким получателям, может находиться в нескольких очередях. Чтобы приостановить доставку сообщения в нескольких очередях с помощью одной операции, необходимо применить фильтр. Дополнительные сведения см. в статьях Свойства сообщений в очередях и Параметры фильтрации сообщений.
Если приостановить доставку сообщения во время его передачи на следующий узел, то доставка сообщения продолжится, а его состояние станет PendingSuspend. Если доставка не удастся, сообщение заново поступит в очередь, а затем его доставка будет приостановлена.
Приостановка доставки сообщений с помощью средства просмотра очереди
Откройте Элементы управления Exchange и в разделе Средства для потока почты дважды щелкните Средство просмотра очереди, чтобы открыть его в новом окне.
В средстве просмотра очередей перейдите на вкладку Сообщения . Отобразится список всех сообщений на сервере, к которому вы подключены. Чтобы отображалась только отдельная очередь, откройте вкладку Очереди, дважды щелкните имя очереди, а затем откройте вкладку Server\Queue.
Выберите одно или несколько сообщений, щелкните правой кнопкой мыши и выберите команду Приостановить.
Приостановка доставки сообщений с помощью командной консоли Exchange
Чтобы приостановить доставку сообщений, используйте следующий синтаксис:
Suspend-Message <-Identity MessageIdentity | -Filter "MessageFilter">
В этом примере приостанавливается доставка сообщения с идентификатором 3 в очереди "Сообщения с недостижимым местом назначения" на сервере с именем Mailbox01.
Suspend-Message -Identity Mailbox01\Unreachable\3
В этом примере приостанавливается доставка всех сообщений во всех очередях на локальном сервере, отправленных с домена contoso.com.
Suspend-Message -Filter "FromAddress -like '*contoso.com'"
В этом примере приостанавливается доставка всех сообщений в очереди доставки для домена contoso.com на сервере Mailbox01.
Get-Queue Mailbox01\contoso.com | Get-Message | Suspend-Message
В этом примере приостанавливается доставка всех сообщений во всех очередях на локальном сервере.
Get-Queue | Get-Message | Suspend-Message
Дополнительные сведения см. в статье Suspend-Message.
Как проверить, все ли получилось?
Чтобы проверить, успешно ли приостановлена доставка сообщений в очередях, выполните одно из указанных ниже действий.
В средстве просмотра очереди выберите очередь или создайте фильтр, чтобы убедиться, что сообщения приостановлены.
В командной консоли Exchange замените MessageFilter используемым фильтром или <QueueIdentity> идентификатором очереди и выполните следующие команды, чтобы убедиться, что сообщения приостановлены:
Get-Message -Filter "MessageFilter"
Или
Get-Message -Queue <QueueIdentity>
Дополнительные сведения см. в статье Get-Message.
Возобновление доставки сообщений в очередях
Примечания.
- Возобновлять доставку можно только для сообщений с состоянием "Приостановлено".
- Состояние очереди, в которой находятся сообщения, влияет на их доставку. Например, если возобновить приостановленную доставку сообщений в очереди с состоянием "Приостановлено", то сообщения не будут доставлены, пока не будет возобновлена работа очереди. Дополнительные сведения о возобновлении работы очередей см. в разделе Возобновление работы очередей.
Возобновление доставки сообщений с помощью средства просмотра очереди
Откройте Элементы управления Exchange и в разделе Средства для потока почты дважды щелкните Средство просмотра очереди, чтобы открыть его в новом окне.
В средстве просмотра очередей перейдите на вкладку Сообщения . Отобразится список всех сообщений на сервере, к которому вы подключены. Чтобы выполнить действие с отдельной очередью, откройте вкладку Очереди, дважды щелкните имя очереди, а затем откройте вкладку Server\Queue.
Щелкните Создать фильтр и введите выражение фильтра следующим образом:
- Выберите Состояние в раскрывающемся списке свойств сообщения.
- Выберите пункт Равно из раскрывающегося списка операторов сравнения.
- Выберите Приостановлено в раскрывающемся списке значений.
Нажмите кнопку Применить фильтр. Отобразятся все сообщения, имеющие состояние «Приостановлено».
Выделите одно или несколько сообщений в списке, щелкните правой кнопкой мыши и выберите команду Возобновить.
Возобновление доставки сообщений с помощью командной консоли Exchange
Чтобы возобновить доставку сообщений, используйте следующий синтаксис:
Resume-Message <-Identity MessageIdentity | -Filter "MessageFilter">
В этом примере возобновляется передача всех сообщений от всех отправителей в домене contoso.com.
Resume-Message -Filter "FromAddress -like '*contoso.com'"
В этом примере возобновляется доставка сообщения с идентификатором 3 в очереди "Сообщения с недостижимым местом назначения" на сервере с именем Mailbox01.
Resume-Message -Identity Mailbox01\Unreachable\3
Как убедиться в том, что все получилось?
Чтобы проверить, успешно ли возобновлена доставка сообщений в очередях, выполните одно из указанных ниже действий.
В средстве просмотра очереди выберите очередь или создайте фильтр, чтобы убедиться, что сообщения больше не находятся в приостановленном состоянии.
В командной консоли Exchange замените MessageFilter фильтром, который вы использовали, или <QueueIdentity> идентификатором очереди и выполните следующую команду, чтобы убедиться, что сообщения больше не приостановлены:
Get-Message -Filter "MessageFilter"
Или
Get-Message -Queue <QueueIdentity>
Дополнительные сведения см. в статье Get-Message.
Если сообщения нет ни в одной из очередей на сервере, скорее всего, оно было доставлено на следующий узел.
Перенаправление сообщений в очередях
При перенаправлении сообщений все активные сообщения очередей доставки удаляются на исходном сервере почтовых ящиков и направляются на целевой сервер почтовых ящиков. Сообщения добавляются в очередь доставки и направляются на следующий узел.
Примечания.
- Перенаправляются только активные сообщения.
- Теневые очереди и сообщения из очереди подозрительных сообщений не перенаправляются.
- Во время перенаправления исходный сервер почтовых ящиков не принимает новые сообщения.
- Перенаправлять сообщения можно только с помощью командной консоли Exchange.
Перенаправление сообщений с помощью командной консоли Exchange
Чтобы перенаправлять сообщения, используйте следующий синтаксис:
Redirect-Message -Server <ServerIdentity> -Target <ServerFQDN>
В этом примере сообщения из всех очередей доставки на сервере с именем Mailbox01 перенаправляются на сервер Mailbox02.contoso.com.
Redirect-Message -Server Mailbox01 -Target Mailbox02.contoso.com
Дополнительные сведения см. в статье Redirect-Message.
Как проверить, все ли получилось?
Чтобы проверить, успешно ли перенаправлены сообщения в очередях, выполните одно из указанных ниже действий.
В средстве просмотра очереди убедитесь, что значение Количество сообщений в очередях доставки на исходном сервере отсутствует или уменьшается.
В командной консоли Exchange выполните приведенную ниже команду, чтобы убедиться, что значение свойства MessageCount для очередей доставки на исходном сервере уменьшается или отсутствует.
Get-Queue