В этом разделе описываются командлеты для очередей в среде управления Exchange и объясняется, как использовать командлеты и наборы параметров для создания запроса, извлечения результатов и выполнения изменяющих действий. Дополнительные сведения о задачах, решаемых для очередей, и их применении для контроля и устранения неполадок см. в разделе Управление очередями.

В Microsoft Exchange Server 2007 можно использовать среду управления Exchange для выполнения задач управления и настройки, а также для создания сценариев с целью автоматизации задач. Среду управления Exchange можно также использовать для просмотра сведений об очередях на сервере и о сообщениях, которые находятся в этих очередях, а также для управления очередями и элементами почты. Эти операции полезны для устранения неполадок в почтовом потоке и для идентификации нежелательной почты. Дополнительные сведения об использовании среды управления Exchange см. в разделе Использование среды управления Exchange.

Управление очередями и сообщениями

Задачи, решаемые для очередей, группируются в две категории: действия просмотра и изменяющие действия. Действия просмотра позволяют отображать очереди и сообщения, находящиеся в очередях на сервере, и выбирать порядок группирования и сортировки данных при их отображении. Изменяющие действия — это операции, которые изменяют состояние очередей и сообщений. Оба типа задач получают доступ к данным путем подключения к транспортному рабочему процессу с помощью удаленных вызовов процедур. Дополнительные сведения о транспортном процессе Exchange 2007 см. в разделе Архитектура транспорта.

По умолчанию среда управления Exchange в основном имеет дело с локальным сервером. Можно также подключиться к удаленному серверу и просмотреть очереди и сообщения на этом сервере, указав имя удаленного сервера как часть идентификатора очереди или посредством использования параметра Server с фильтром. Дополнительные сведения об использовании среды управления Exchange для просмотра очередей и сообщений см. в разделах Инструкции по просмотру очередей и Инструкции по просмотру сообщений.

Командлеты для очередей

В табл. 1 перечислены командлеты, которые доступны в среде управления Exchange для управления очередями и сообщениями в очередях. Дополнительные сведения о применении каждого командлета см. в разделах справки, указанных в столбце «Дополнительные сведения».

Таблица 1. Командлеты для очередей

Командлет Применение Дополнительные сведения

Export-Message

Этот командлет сохраняет копию сообщения в файле, указываемом администратором.

Export-Message

Инструкции по экспорту сообщений из очередей

Get-Message

Этот командлет позволяет просматривать подробные сведения о сообщениях, которые в текущий момент находятся в очереди для доставки. Командлет Get-Message может использоваться для извлечения набора сообщений и последующего направления результатов выполнения командлета в один из командлетов активного действия.

Get-Message

Инструкции по просмотру сообщений

Конвейеризация

Работа с возвращаемыми данными команды

Get-Queue

Этот командлет позволяет просматривать подробные сведения о настройках очередей, которые существуют на транспортных серверах. Командлет Get-Queue может использоваться для извлечения набора очередей и последующего направления результатов выполнения командлета в один из командлетов активного действия.

Get-Queue

Инструкции по просмотру очередей

Конвейеризация

Работа с возвращаемыми данными команды

Remove-Message

Этот командлет удаляет сообщение из очереди. Администратор может выбрать, посылать или нет отчет о недоставке.

Remove-Message

Инструкции по удалению сообщений из очередей

Resume-Message

Этот командлет возобновляет доставку ранее приостановленного сообщения. Можно также использовать командлет Resume-Message, чтобы отправить сообщения, находящиеся в очереди опасных сообщений, обратно в очередь отправки для повторной обработки классификатором.

Resume-Message

Инструкции по возобновлению доставки сообщений

Инструкции по повторной отправке сообщений в очереди

Resume-Queue

Этот командлет возобновляет доставку сообщений из ранее приостановленной очереди.

Resume-Queue

Инструкции по возобновлению очередей

Retry-Queue

Этот командлет выполняет попытку подключения для очереди, имеющей в текущий момент состояние «Retry». Данная попытка подключения заменяет следующую плановую попытку. Командлет Retry-Queue можно также использовать вместе с параметром Resubmit для отправки сообщений, находящихся в очередях доставки или в очереди недоставленных сообщений, в очередь отправки для повторной обработки классификатором.

Retry-Queue

Повторение попытки очередей

Инструкции по повторной отправке сообщений в очереди

Suspend-Message

Этот командлет приостанавливает доставку сообщения, которое находится в очереди на транспортном сервере Exchange 2007.

Suspend-Message

Инструкции по приостановке отправки сообщений

Suspend-Queue

Этот командлет приостанавливает исходящие действия для очереди на транспортном сервере Exchange 2007.

Suspend-Queue

Инструкции по приостановке очередей

Использование наборов параметров задач, решаемых для очередей

Задачи, решаемые для очередей, поддерживают несколько наборов параметров. Существуют следующие наборы таких параметров: «Identity», «Queue» и «Filter». Набор параметров «Filter» доступен только с командами сообщений. В команде не допускается объединять наборы параметров «Identity», «Queue» и «Filter». Параметр Server используется только с выражением фильтра.

Можно также использовать расширенные параметры страниц, которые доступны в среде управления Exchange в сочетании с наборами параметров «Identity», «Queue» и «Filter». Расширенные параметры страниц используются в командлетах Get-Message и Get-Queue для управления сортировкой и отображением набора результатов. Расширенные параметры страниц описываются в таблице 4, далее в этом разделе.

Набор параметров «Identity», «Queue» или «Filter» следует применять при использовании команды, которая изменяет сообщения или очереди. Если никакие параметры не указаны, командлеты Get-Message и Get-Queue отобразят все объекты сообщений и очередей, существующие на локальном сервере.

Если набор результатов для запроса очереди или сообщения содержит более 250 000 элементов, возникает ошибка и выводится запрос на применение фильтра для уменьшения количества результатов.

Использование параметра «Identity»

Параметр Identity применяется, когда конкретное сообщение (или очередь), которое требуется просмотреть или над которым выполняется действие, известно. Поиск по идентификатору выполняется быстрее, чем форматирование такого же запроса в виде фильтра. Имя сервера может быть представлено как имя узла или полное имя домена. Можно ввести имя удаленного сервера как часть идентификатора, чтобы инициировать подключение удаленного вызова процедуры к серверу, к которому может адресоваться запрос об очередях на этом сервере. Если имя сервера не указывается, по умолчанию используется локальный узел. Когда идентификатор предоставляется для изменяющего действия, идентифицируемый объект должен быть полностью определен и должен быть уникальным. Если идентификатор не определен явно, действие не выполняется. Если в идентификаторе опустить серверную часть, по умолчанию используется локальный компьютер.

При использовании параметра «Identity» в командлете Get-Queue или Get-Message параметр «Identity» поддерживает использование подстановочных выражений.

Идентификатор очереди

Постоянные очереди имеют уникальные имена и могут указываться по имени. Очередям доставки назначаются уникальные идентификаторы баз данных. Этот идентификатор базы данных можно использовать для указания очереди, можно также для указания очереди использовать имя места назначения доставки. Чтобы выполнить операцию над очередью путем указания ее уникального идентификатора базы данных, необходимо вначале выполнить командлет Get-Queue. Идентификатор базы данных будет возвращен в результатах выполнения команды. Допустимые форматы идентификаторов для очередей показаны в таблице 2.

Таблица 2.   Форматы идентификаторов очередей

Формат идентификатора очереди Применение

Server\QueueJetID (Int64)

Полный уникальный идентификатор для очереди доставки.

\QueueJetID

Идентификатор очереди на локальном сервере. Имя сервера опущено. Поэтому по умолчанию используется локальный сервер.

Server\*

Любая очередь на указанном сервере.

Server\NextHopDomain

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

\NextHopDomain

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

Server\Poison

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

Server\Submission

Очередь, которая содержит элементы, ожидающие обработки классификатором.

Server\Unreachable

Расположенная на указанном сервере очередь, содержащая элементы, которые невозможно маршрутизировать.

Следующий код служит примером использования идентификатора очереди в командлете Get-Queue. В этом примере возвращается список всех очередей, содержащих сообщения для доставки в SMTP-домены, имена которых заканчиваются на Contoso.com. В данном примере выполняется также форматирование набора результатов в виде подробного списка:

Get-Queue -Identity Server\*Contoso.com | format-list

Идентификатор сообщения

Идентификатор сообщения — это совокупность уникального почтового элемента базы данных и идентификатора очереди. Идентификатор в виде целого числа присваивается сообщению, когда сообщение поступает в базу данных JET для очередей, и это число добавляется к идентификатору очереди для создания идентификатора сообщения. Чтобы выполнить операцию над сообщением путем указания ее уникального идентификатора базы данных, необходимо вначале выполнить командлет Get-Message. Идентификатор возвращается в результатах выполнения команды. Если требуется подключиться к удаленному серверу, можно включить имя сервера как часть идентификатора сообщения. Если имя сервера опускается, по умолчанию используется локальный сервер. Сообщение, отправляемое нескольким получателям, может находиться в нескольких очередях. Можно использовать подстановочный знак, чтобы указать, что сообщение необходимо найти во всех очередях, в которые направлялось сообщение. Таблица 3 содержит примеры допустимых идентификаторов сообщения.

Таблица 3.   Форматы идентификаторов сообщений

Формат идентификатора сообщения Применение

Server\QueueJetId\MessageJetID

Полное обозначение сообщения в очереди.

Server\Poison\MessageJetID

Сообщение, которое находится в поглощающей очереди сообщений.

MessageJetID

Все сообщения, имеющие идентификатор этой базы данных JET и направленные в какую-либо очередь на локальном сервере (одно сообщение направляется в несколько очередей).

Server\*\MessageJetID

Все сообщения, имеющие идентификатор этой базы данных JET и направленные в какую-либо очередь на указанном сервере.

Следующий код служит примером использования идентификатора сообщения в командлете Get-Message. В этом примере возвращается список всех сообщений, имеющих указанный идентификатор и находящихся в какой-либо очереди на заданном сервере. В этом примере выполняется также форматирование набора результатов в виде подробного списка:

Get-message -Identity Server\*\1234 | Format-List

Использование параметра «Filter»

Задачи, решаемые для очередей, поддерживают использование параметра Filter, позволяющего задавать критерии, в соответствии с которыми извлекаются очереди и сообщения. Свойства очередей и сообщений используются в качестве условий отбора. Создайте фильтр, чтобы отобразить ограниченный набор очередей или сообщений. После обнаружения очередей и сообщений, которые требуется проконтролировать, можно просмотреть сведения о свойствах каждого объекта. Эти сведения полезны при устранении проблем в почтовом потоке.

Параметр Filter используется для добавления в выражение логических операторов и операторов сравнения, чтобы на экране отображались только объекты очереди или сообщения, которые соответствуют условиям фильтра. Логический оператор -and можно использовать для указания нескольких условий, которым должны соответствовать результаты. Если применяется оператор -and, то отображаться будут только объекты, соответствующие всем заданным условиям выражения. Для указания условий фильтра используется подмножество свойств сообщения или очереди. При указании свойства это должно быть допустимое свойство объекта, для которого составляется запрос, а значение, для которого ищется соответствие, должно быть выражено с помощью правильного синтаксиса. Если выражение для значения свойства не является одиночным целым числом, убедитесь, что значение заключено в кавычки.

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

Дополнительные сведения о свойствах, которые могут использоваться для фильтрации, о правильном синтаксисе для этих свойств и о поддерживаемых операторах см. в следующих разделах:

Использование параметра «Queue»

Параметр Queue используется только с командами сообщений. Данный параметр применяется для указания идентификатора очереди, из которой извлекаются сообщения. Если очередь задана, извлекаются все сообщения из этой очереди. Это позволяет извлечь все сообщения из некоторой очереди без необходимости использовать выражение фильтра. Используя подстановочный знак, можно извлекать сообщения из нескольких выражений. Применяйте формат идентификатора очереди из таблицы 2, когда используете параметр Queue вместе с командой сообщения. Следующий пример кода показывает, как использовать параметр Queue в командлете Get-Message. В этом примере получают набор результатов, содержащий только те сообщения, которые расположены на указанном сервере и находятся в очереди на доставку в SMTP-домен «Contoso.com»:

Get-message -Queue Server\Contoso.com

Использование расширенных параметров страниц

В зависимости от текущего почтового потока запросы очередей и сообщений могут возвращать очень большой набор объектов. Для управления извлечением и отображением результатов запросов можно использовать расширенные параметры страниц.

При использовании среды управления Exchange для просмотра очередей и сообщений, находящихся в очередях, запрос за один раз извлекает одну страницу данных. Расширенные параметры страниц управляют размером набора результатов и могут также применяться для сортировки результатов. Все расширенные параметры страниц применяются по мере необходимости и могут комбинироваться с любым из наборов параметров, которые используются в командлетах Get-Queue и Get-Message. Если расширенные параметры страниц не указываются, запрос возвращает результаты в порядке возрастания идентификаторов. По умолчанию при указании порядка сортировки свойство идентификатора сообщения всегда включается и сортируется в порядке возрастания. Данное отношение порядка применяется по умолчанию. Свойство идентификации сообщения включается, поскольку другие свойства, которые могут включаться в порядок сортировки, не являются уникальными. Посредством явного включения свойства идентификации сообщения в порядок сортировки можно указать, что результаты должны отображать идентификаторы сообщений, отсортированные в порядке убывания.

С помощью параметров BookmarkIndex и BookmarkObject можно пометить позицию в отсортированном наборе результатов. Если при извлечении следующей страницы результатов объект закладки больше не существует, отношение порядка по умолчанию гарантирует, что набор результатов будет начинаться с объекта, расположенного ближе остальных к закладке. Ближайший объект определяется указанным порядком сортировки.

В таблице 4 описываются расширенные параметры страниц.

Таблица 4.   Расширенные параметры страниц

Параметр Описание

BookmarkIndex

Параметр BookmarkIndex задает позицию в наборе результатов, с которой начинаются отображаемые результаты. Значение параметра BookmarkIndex — это индекс, начинающийся с 1, в общем наборе результатов. Если значение меньше или равно 0, возвращается первая полная страница результатов. Если значение установлено равным Int.MaxValue, возвращается последняя полная страница результатов.

BookmarkObject

Параметр BookmarkObject задает в наборе результатов объект, с которого начинаются отображаемые результаты. Если указать объект закладки, этот объект используется в качестве пункта начала поиска. В зависимости от значения параметра SearchForward извлекаются строки, расположенные до или после этого объекта. В одиночном запросе не допускается объединять параметр BookmarkObject и параметр BookmarkIndex.

IncludeBookmark

Параметр IncludeBookmark указывает, должен ли включаться объект закладки в набор результатов. По умолчанию для этого параметра устанавливается значение $true, и объект закладки включается в набор результатов. Можно выполнить запрос для получения результатов ограниченного размера, а затем указать последний элемент в этом наборе результатов в качестве закладки для следующего запроса. В этом случае, возможно, потребуется установить для параметра IncludeBookmark значение $false, чтобы объект не включался в оба набора результатов.

ResultSize

Параметр ResultSize указывает число результатов, выводимых на каждой странице. Если не указать для данного параметра значение, по умолчанию используется размер результатов равный 1000 объектам. Exchange Server 2007 ограничивает набор результатов числом 250 000.

ReturnPageInfo

Параметр ReturnPageInfo является скрытым параметром. Он возвращает сведения об общем числе результатов и индекс первого объекта текущей страницы. По умолчанию используется значение $false.

SearchForward

Параметр SearchForward указывает, должен ли поиск в наборе результатов выполняться вперед или назад. Этот параметр не влияет на порядок, в котором возвращается набор результатов. Он определяет направление поиска относительно индекса или объекта закладки. Если не задан ни индекс, ни объект закладки, параметр SearchForward указывает, будет ли поиск начинаться с первого или последнего объекта в наборе результатов. По умолчанию для этого параметра используется значение $true. Если параметр SearchForward установлен равным $true и задана закладка, запросом выполняется поиск в прямом направлении от закладки. Если используется данная настройка и после закладки нет результатов, запрос возвращает последнюю полную страницу результатов. Если параметр SearchForward установлен равным $false и задана закладка, запросом выполняется поиск в обратном направлении от закладки. Если используется данная настройка и за закладкой имеется неполная страница результатов, запрос возвращает первую полную страницу результатов.

SortOrder

Параметр SortOrder указывает массив свойств сообщений, которые используются для управления порядком сортировки набора результатов. Свойства порядка сортировки задаются в порядке убывания старшинства. Каждое свойство отделяется запятой и дополняется знаком плюс (+) для сортировки в порядке возрастания или знаком минус (-) для сортировки в порядке убывания. Если с помощью этого параметра не указан явный порядок сортировки, записи, соответствующие условиям запроса, отображаются и сортируются по полю «Identity» соответствующего типа объекта. Если порядок сортировки не задан в явном виде, результаты всегда сортируются по идентификатору в порядке возрастания.

В следующем примере кода показано, как использовать в запросе расширенные параметры страниц. В данном примере команда выполняет подключение к указанному серверу и извлекает набор результатов, содержащий 500 объектов. Результаты отображаются отсортированными сначала в порядке возрастания адреса отправителя, а затем в порядке убывания размера сообщения:

Get-message -Server Exchange.Contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size

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

В следующем примере с помощью сценария извлекается первая страница результатов, устанавливается объект закладки, исключается объект закладки из набора результатов, и затем извлекаются следующие 500 объектов на указанном сервере.

Пример. Использование сценария для установки объекта закладки

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

    Копировать код
    $Results=Get-message -Server Exchange.Contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size
    
  2. Чтобы установить объект закладки, введите следующую команду для сохранения последнего элемента первой страницы в переменной:

    Копировать код
    $temp=$results[$results.length-1]
    
  3. Чтобы извлечь следующие 500 объектов на указанном сервере и исключить объект закладки, введите следующую команду:

    Копировать код
    Get-message -Server Exchange.Contoso.com -BookmarkObject:$temp -IncludeBookmark $False -ResultSize 500 -SortOrder +FromAddress,-Size
    

Дополнительные сведения