Powershell – Отчеты по почтовым ящикам. Часть 1
Несколько примеров использования powershell для получения статистики из Exchange 2007
Примененение фильтрации по полю DisplayName
Get-Mailbox -filter "DisplayName -like ‘*user*’"
Ищем пользователей с превышением квот
get-MailboxStatistics | where {"IssueWarning","ProhibitSend","MailboxDisabled" -contains $_.StorageLimitStatus} | format-Table DisplayName,TotalItemSize
Получаем размеры всех существующих ящиков в виде таблицы
get-mailbox | get-mailboxstatistics | select-object DisplayName,TotalItemSize,StorageLimitStatus,LastLogonTime | FT
Выводим отчет по количеству почтовых ящиков во всех хранилищах и отображаем размер базы.
Get-MailboxDatabase | Select Server, StorageGroupName, Name, @{Name="Size Gb";Expression={$objitem = (Get-MailboxDatabase $_.Identity); $path = "`\`\" + $objitem.server + "`\" + $objItem.EdbFilePath.DriveName.Remove(1).ToString() + "$"+ $objItem.EdbFilePath.PathName.Remove(0,2); $size = ((Get-ChildItem $path).length)/1048576KB; [math]::round($size, 2)}}, @{Name="Size Mb";Expression={$objitem = (Get-MailboxDatabase $_.Identity); $path = "`\`\" + $objitem.server + "`\" + $objItem.EdbFilePath.DriveName.Remove(1).ToString() + "$"+ $objItem.EdbFilePath.PathName.Remove(0,2); $size = ((Get-ChildItem $path).length)/1024KB; [math]::round($size, 2)}}, @{Name="count";expression={(Get-Mailbox -Database $_.Identity | Measure-Object).Count}} | Format-table -AutoSize
Похожие статьи
Приглашаю присоединиться ко мне в следующих сервисах:
Если Вам понравилась статья, то вы можете подписаться на RSS. А также бесплатно подписаться по E-mail и получать актуальную информацию в числе первых.
Вы можете оставить комментарий.
Спасибо за скрипт. Впервые столкнувшемуся с эксчем это шикарный подарок.
Два вопроса:
1. почему может не отображать информацию об одном хранилище? все очтальные отобржаются нормально.
2. если запсутить его второй раз сразу же, то выдает нулевые значения. в чем причина?
ТатьянаЦитировать
1. Модифицируйте скрипт после Get-MailboxDatabase добавив имя нужной базы
2. Сложно сказать. Возможно вы его запускаете не на MailBox сервере.
Сергей МариничевЦитировать
1. Помогло
2. Запускаю скрипт спустя минут 5-10 на этом же сервере, что и в первый раз, в том же окне консоли… и все значения 0…
ТатьянаЦитировать
Странно.
Get-MailboxDatabase DB_NAME | fl
все показывает?
Сергей МариничевЦитировать
По одной базе данных информацию показывает не только указанная вами команда, но и весь скрипт.
А вот общий список после первого выполнения некотрое время идет с нулевыми заначениями. Кроме того, первые 2-3 базы в списке также иногда имеют нулевые значения параметров
ТатьянаЦитировать
Попробуйте опросить базы по отдельности.
Подозреваю что проблема в целостности самих баз.
Сергей МариничевЦитировать