Поиск очередей и сообщений в очередях в командной консоли Exchange

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

Для управления элементами вы также можете воспользоваться средством просмотра очереди в панели элементов Exchange. Однако командлеты для просмотра очередей и сообщений в командной консоли Exchange поддерживают больше фильтруемых свойств и параметров фильтра, чем средство просмотра очередей. Дополнительные сведения о средстве просмотра очереди см. в разделе Queue Viewer.

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

Параметры фильтрации очередей

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

Командлет Параметры фильтрации Comments
Get-Queue Exclude
Фильтр
Identity
Include
Сервер
Параметры Include и Exclude можно использовать вместе с другими параметрами фильтрации в той же команде.
Нельзя использовать параметры Identity и Filter в одной команде.
Параметр Server указывает сервер, на котором требуется выполнить команду. Параметры Server и Identity нельзя использовать в одной команде, но параметр Server можно использовать с другими параметрами фильтрации в той же команде.
Resume-Queue
Retry-Queue
Suspend-Queue
Identity
Фильтр
Сервер
Параметр Identity нельзя использовать с другими параметрами фильтрации в той же команде.
Параметр Server указывает сервер, на котором требуется выполнить команду. Параметры Server и Filter можно использовать в одной команде.
Get-QueueDigest Dag
Фильтр
Forest
Сервер
Site
Необходимо использовать один из параметров Dag, Site, Server или Forest , но вы не можете использовать их вместе в одной команде.
Параметр Filter можно использовать с любым из других параметров фильтрации.

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

Параметр Identity использует базовый синтаксис <Серверная>\ <очередь>. Как правило, это значение однозначно идентифицирует очередь, поэтому нельзя использовать другие параметры фильтрации с параметром Identity . Исключением является командлет Get-Queue , где можно использовать параметры Include и Exclude с параметром Identity .

В следующей таблице описан синтаксис параметра Identity в командлетах управления очередями.

Значение параметра Identity Описание
<Server>\<PersistentQueueName> или <PersistentQueueName> Постоянная очередь на указанном или локальном сервере.
<PersistentQueueName> имеет значение Submission, Unreachableили Poison.
Дополнительные сведения о постоянных очередях см. в разделе Типы очередей.
<Server>\<NextHopDomain> или <NextHopDomain> Очередь доставки на указанном или локальном сервере.
<NextHopDomain> — это имя очереди из значения свойства NextHopDomain очереди. Например, адресное пространство соединителя отправки, имя сайта Active Directory или имя DAG. Дополнительные сведения см. в разделе NextHopSolutionKey.
<Server>\<QueueInteger> или <QueueInteger> Очередь доставки на указанном или локальном сервере.
<QueueInteger> — это уникальное целочисленное значение, присвоенное очереди доставки или теневой очереди в базе данных очередей. Однако необходимо выполнить командлет Get-Queue , чтобы найти это значение в свойствах Identity или QueueIdentity .
<Server>\Shadow\<QueueInteger> или Shadow\<QueueInteger> Теневая очередь на указанном или локальном сервере. Дополнительные сведения о теневых очередях и теневой избыточности см. в разделе Теневая избыточность в Exchange Server.
<Server>\* или * Все очереди на указанном или локальном сервере.
Примечание.Identity — это позиционный параметр, который означает, что можно указать значение, не указывая -Identity квалификатор. Например, следующие команды дают тот же результат:
Get-Queue -Identity *
Get-Queue *
Get-Queue

Параметр фильтра в командлетах очередей

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

Get-Queue -Filter "<Property1> -<ComparisonOperator> '<Value1>' -and <Property2> -<ComparisonOperator> '<Value2>'..."

Полный список свойств очереди, которые можно использовать с параметром Filter , см. в разделе Свойства очереди.

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

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

Включение и исключение параметров в Get-Queue

Параметры Include и Exclude можно использовать в командлете Get-Queue самостоятельно, с каждым параметром othe или с другими параметрами фильтрации для точной настройки результатов. Например, вы можете:

  • Исключите пустые очереди.

  • Исключите очереди во внешние назначения.

  • Включите очереди с определенным значением DeliveryType.

Параметры Include и Exclude используют следующие свойства очередей для фильтрации:

Значение Описание Пример
DeliveryType Включает или исключает очереди на основе свойства DeliveryType , определяющего способ передачи сообщения в следующий прыжок. Допустимые значения описаны в разделе NextHopSolutionKey.
Вы можете указать несколько значений, разделив их запятыми.
Возвращает все очереди доставки на локальном сервере, где следующим прыжком является соединитель отправки, размещенный на локальном сервере и настроенный для маршрутизации интеллектуальных узлов.
Get-Queue -Include SmartHostConnectorDelivery
Empty Включает или исключает пустые очереди. Пустые очереди имеют значение 0 в свойстве MessageCount . Возвращает все очереди на локальном сервере, содержащие сообщения.
Get-Queue -Exclude Empty
External Включает или исключает очереди, имеющие значение External в свойстве NextHopCategory .

Свойство DeliveryType внешних очередей всегда имеет одно из следующих значений:

  • DeliveryAgent
  • DnsConnectorDelivery
  • NonSmtpGatewayDelivery
  • SmartHostConnectorDelivery

Дополнительные сведения см. в разделе NextHopSolutionKey.

Возвращает все внутренние очереди на локальном сервере.
Get-Queue -Exclude External
Internal Это значение включает или исключает очереди, имеющие значение Internal в свойстве NextHopCategory . Обратите внимание, что сообщение для внешнего получателя может потребовать нескольких внутренних прыжков, прежде чем оно достигнет сервера шлюза, на котором оно доставлено извне. Возвращает все внутренние очереди на локальном сервере.
Get-Queue -Include Internal

Обратите внимание, что можно дублировать функции параметров Include и Exclude с помощью параметра Filter . Например, следующие команды дают тот же результат:

  • Get-Queue -Exclude Empty

  • Get-Queue -Filter "MessageCount -gt 0"

Однако, как видите, синтаксис параметров Include и Exclude проще и проще запоминать.

Get-QueueDigest

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

Обратите внимание, что очереди на подписанном пограничном транспортном сервере не включаются в результаты. Кроме того, Get-QueueDigest доступен на пограничном транспортном сервере, но результаты ограничены локальными очередями на пограничном транспортном сервере.

Примечание.

По умолчанию командлет Get-QueueDigest отображает очереди доставки, содержащие десять или более сообщений, а результаты находятся в возрасте от одной до двух минут. Инструкции по изменению этих значений по умолчанию см. в разделе Настройка Get-QueueDigest.

В следующей таблице описаны параметры фильтрации и сортировки, доступные в командлете Get-QueueDigest .

Параметр Описание
Dag, Server или Site Эти параметры являются взаимоисключающими (не могут использоваться в одной команде) и задают область для командлета. Необходимо указать один из этих параметров или параметр Лес . Как правило, используется имя сервера, DAG или сайта Active Directory, но можно использовать любое значение, однозначно определяющее сервер, DAG или сайт. Можно указать несколько серверов, групп доступности доступности или сайтов, разделенных запятыми.
Forest Этот параметр является обязательным, если вы не используете параметры Dag, Server или Site . Значение для этого переключателя указать нельзя. С помощью этого параметра вы получаете очереди со всех серверов почтовых ящиков Exchange в локальном лесу Active Directory. Этот параметр нельзя использовать для просмотра очередей в удаленных лесах Active Directory.
DetailsLevel Normal — значение по умолчанию. В результатах возвращаются следующие свойства:
  • QueueIdentity
  • ServerIdentity
  • MessageCount

Verbose возвращает следующие дополнительные свойства в результатах:

  • DeferredMessageCount
  • LockedMessageCount*
  • IncomingRate
  • Исходящая скорость
  • Velocity
  • NextHopDomain
  • NextHopCategory
  • NextHopConnector
  • DeliveryType*
  • Состояние
  • RiskLevel*
  • OutboundIPPool*
  • LastError
  • TlsDomain

None пропускает имя очереди из столбца Сведения в результатах.

* Эти свойства зарезервированы для внутреннего использования Майкрософт и не используются в локальных организациях Exchange. Дополнительные сведения обо всех свойствах в этом списке см. в разделе Свойства очереди.

Фильтр Фильтрация очередей на основе свойств очереди, как описано в разделе Фильтровать параметр в командлетах очередей . Можно использовать любое из фильтруемых свойств очереди, как описано в разделе Свойства очереди .
GroupBy Групповка результатов очереди. Объединить результаты можно по одному из следующих свойств:
  • DeliveryType
  • LastError
  • NextHopCategory
  • NextHopDomain
  • NextHopKey
  • Состояние
  • ServerName

По умолчанию результаты группируются по свойству NextHopDomain. Дополнительные сведения об этих свойствах очереди см. в разделе Свойства очереди.

ResultSize Ограничивает результаты очереди указанным значением. Очереди сортируются в порядке убывания в зависимости от количества сообщений в очереди и группируются по значению, заданному параметром GroupBy . Значение по умолчанию — 1000. Это значит, что по умолчанию команда отображает первую тысячу очередей, сгруппированных по свойству NextHopDomain и упорядоченных по убыванию числа сообщений в очереди.
Timeout Параметр указывает количество секунд до истечения времени ожидания операции. Значение по умолчанию — 00:00:10 или 10 секунд.

В этом примере возвращаются все непустые внешние очереди на серверах с именами Mailbox01, Mailbox02 и Mailbox03.

Get-QueueDigest -Server Mailbox01,Mailbox02,Mailbox03 -Include External -Exclude Empty

Параметры фильтрации сообщений

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

Командлет Параметры фильтрации Comments
Get-Message Фильтр
Identity
Очередь
Сервер
Нельзя использовать параметры Filter, Identity или Queue в одной команде.
Параметр Server указывает сервер, на котором требуется выполнить команду. Параметры Server и Filter можно использовать в одной команде.
Remove-Message
Resume-Message
Suspend-Message
Фильтр
Identity
Сервер
Необходимо использовать параметр Identity или Filter , но их нельзя использовать в одной и той же команде.
Параметр Server указывает сервер, на котором требуется выполнить команду. Параметры Server и Filter можно использовать в одной команде.
Redirect-Message Сервер Этот командлет истощает активные сообщения из всех очередей доставки на указанном сервере, поэтому сервер является единственным доступным параметром фильтрации. Дополнительные сведения см. в статье Перенаправление сообщений в очередях.
Export-Message Identity Этот параметр на самом деле не является фильтром, так как он однозначно идентифицирует сообщение. Чтобы определить несколько сообщений для этого командлета, используйте Командлет Get-Message и передайте результаты в Export-Message. Дополнительные сведения и примеры см. в статье Экспорт сообщений из очередей.

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

Параметр Identity в командлетах управления сообщениями однозначно идентифицирует сообщение в одной или нескольких очередях, поэтому вы не можете использовать другие параметры фильтрации сообщений. Параметр Identity использует базовый синтаксис <Server>\<Queue>\<MessageInteger>.

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

**Значение параметра identity Описание**
<Server>\<Queue>\<MessageInteger> или <Queue>\<MessageInteger> Сообщение в определенной очереди на указанном или локальном сервере.

<Queue> — это удостоверение очереди, как описано в разделе Удостоверение очереди :

  • Имя постоянной очереди:
  • Имя очереди доставки.
  • Номер очереди.
  • Идентификатор теневой очереди.

<MessageInteger> — это уникальное целочисленное значение, присваиваемое сообщению при первом входе в базу данных очереди на сервере. Если сообщение отправляется нескольким получателям, которые используют множество очередей, все копии сообщения во всех очередях из базы данных очередей обладают одинаковым целочисленным номером. Однако необходимо выполнить командлет Get-Message , чтобы найти это значение в свойствах Identity или MessageIdentity .

<Server>\*\<MessageInteger>или *\<MessageInteger><MessageInteger> Все копии сообщения во всех очередях в базе данных очередей на указанном или локальном сервере.

Параметр filter в командлетах сообщений

Параметр Filter можно использовать с командлетами Get-Message, Remove-Message, Resume-Message и Suspend-Message , чтобы определить одно или несколько сообщений на основе свойств сообщений. Параметр Filter создает фильтр OPath с операторами сравнения, чтобы ограничить команду сообщениями, которые соответствуют условиям фильтра. Логический оператор -and можно использовать для указания нескольких условий для соответствия. Ниже приведен общий пример синтаксиса:

Get-Message -Filter "<Property1> -<ComparisonOperator> '<Value1>' -and <Property2> -<ComparisonOperator> '<Value2>'..."

Полный список свойств сообщения, которые можно использовать с параметром Filter , см. в разделе Свойства сообщения.

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

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

Параметр Queue

Параметр Queue доступен только в командлете Get-Message . Этот параметр можно использовать для получения всех сообщений в определенной очереди или всех сообщений из нескольких очередей с помощью подстановочного знака (*). При использовании параметра Queue используйте формат <Server>\<Queue> удостоверения очереди, как описано в разделе Удостоверение очереди в этом разделе.

Операторы сравнения, используемые при фильтрации очередей и сообщений

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

Оператор Функция Пример кода
-eq Точное совпадение указанного значения. Показать все очереди с состоянием "Повторить".
Get-Queue -Filter "Status -eq 'Retry'"
Показать все сообщения с состоянием Retry:
Get-Message -Filter "Status -eq 'Retry'"
-ne Не соответствует указанному значению. Показать все очереди, у которых нет состояния "Активные":
Get-Queue -Filter "Status -ne 'Active'"
Показать все сообщения, у которых нет состояния "Активный":
Get-Message -Filter "Status -ne 'Active'"
-gt Больше указанного целого числа или значения даты и времени. Показать очереди, которые в настоящее время содержат более 1000 сообщений:
Get-Queue -Filter "MessageCount -gt 1000"
Отображение сообщений, для которых в настоящее время число повторных попыток превышает 3:
Get-Message -Filter "RetryCount -gt 3"
-ge Больше указанного целого числа или значения даты и времени или равно ей. Отображение очередей, которые в настоящее время содержат 1000 или более сообщений:
Get-Queue -Filter "MessageCount -ge 1000"
Отображение сообщений, для которых в настоящее время количество повторных попыток не превышает 3:
Get-Message -Filter "RetryCount -ge 3"
-lt Меньше указанного целого числа или значения даты и времени. Показать очереди, которые в настоящее время содержат менее 1000 сообщений:
Get-Queue -Filter "MessageCount -lt 1000"
Отображение сообщений с SCL меньше 6:
Get-Message -Filter "SCL -lt 6"
-le Меньше указанного целого числа или значения даты и времени или равно ей. Отображение очередей, которые в настоящее время содержат 1000 или менее сообщений:
Get-Queue -Filter "MessageCount -le 1000"
Отображение сообщений с числом SCL 6 или меньше:
Get-Message -Filter "SCL -le 6"
-like Содержит указанный текст. В текстовую строку необходимо включить подстановочный знак (*). Отображение очередей, имеющих назначение, любому домену SMTP, который заканчивается на Contoso.com:
Get-Queue -Filter "Identity -like '*contoso.com'"
Показать сообщения с темой, содержащей текст "кредит на выплату заработной платы":
Get-Message -Filter "Subject -like '*payday loan*'"

Фильтр, который вычисляет несколько выражений, можно указать с помощью логического оператора -and. Очереди или сообщения должны соответствовать всем условиям фильтра, которые должны быть включены в результаты.

Этот пример отображает список очередей, назначениями которых являются любые имена SMTP-доменов, заканчивающихся на Contoso.com, и которые содержат более 500 сообщений.

Get-Queue -Filter "Identity -like '*contoso.com*' -and MessageCount -gt 500"

В этом примере отображается список сообщений, отправляемых с любого адреса электронной почты в домене contoso.com со значением SCL больше 5.

Get-Message -Filter "FromAddress -like '*Contoso.com*' -and SCL -gt 5"

Расширенные параметры разбивки по страницам

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

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

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

Дополнительные параметры подкачки описаны в следующей таблице.

Параметр Описание
BookmarkIndex Указывает позицию в результатах, с которой начинаются отображаемые результаты. Значение этого параметра представляет собой индекс на основе 1 в общих результатах. Если значение меньше или равно 0, возвращается первая полная страница результатов. Если задано Int.MaxValueзначение , возвращается последняя полная страница результатов.
Этот параметр нельзя использовать с параметром BookmarkObject .
BookmarkObject Указывает объект в результатах, с которого начинаются отображаемые результаты. Если указать объект закладки, этот объект используется в качестве пункта начала поиска. Извлекаются строки до или после этого объекта (в зависимости от значения параметра SearchForward ).
Этот параметр нельзя использовать с параметром BookmarkIndex .
IncludeBookmark Указывает, следует ли включать объект закладки в результаты. Допустимые значения:
$true: объект закладки включен в результаты. Это значение используется по умолчанию.
$false: объект закладки не включен в результаты. Используйте это значение при выполнении запроса для ограниченного размера результата, а затем укажите последний элемент в качестве закладки для следующего запроса. Это предотвращает включение объекта закладки в оба результата.
ResultSize Указывает количество результатов, отображаемых на странице. Если значение не указано, по умолчанию используется размер результатов, равный 1000 объектам. Exchange ограничивает результаты до 250 000.
ReturnPageInfo Это скрытый параметр. Он возвращает сведения об общем числе результатов и индекс первого объекта текущей страницы. Значение по умолчанию — $false.
SearchForward Задает направление поиска.
Указанная закладка: поиск вперед или назад в результатах относительно индекса или объекта закладки.
Закладка не указана: поиск вперед или назад в результатах первого или последнего элемента в результатах.
Допустимые значения:
$true: выполняется поиск вперед из первого элемента в результатах или из указанной закладки. Если за пределами закладки нет результатов, запрос возвращает последнюю полную страницу результатов. Это значение используется по умолчанию.
$false: выполняется поиск в обратном направлении от последнего элемента в результатах или из указанной закладки. Если за пределами закладки меньше полной страницы результатов, запрос возвращает первую полную страницу результатов.
SortOrder Задает свойства сообщения, управляющие порядком сортировки результатов. Порядок указания свойств указывает порядок убывания очередности (результаты сортируются по первому свойству, затем эти результаты сортируются по второму свойству, а затем — по свойству son).
Этот параметр использует синтаксис : <+|-><Property1>,<+|-><Property2>..., где + сортирует свойство по возрастанию и - сортирует свойство в порядке убывания.
Если этот параметр не используется, результаты сортируются по свойству Identity в порядке возрастания.

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

Get-Message -Server mailbox01.contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size

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

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

    $Results=Get-Message -Server mailbox01.contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size
    
  2. Чтобы задать объект закладки, выполните следующую команду, чтобы сохранить последний элемент первой страницы в переменной.

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

    Get-Message -Server mailbox01.contoso.com -BookmarkObject:$Temp -IncludeBookmark $false -ResultSize 500 -SortOrder +FromAddress,-Size