Freigeben über


CalCheck — средство проверки календаря Outlook

Дата публикации исходной статьи: четверг, 23 февраля 2012 г.

Я работал над этим средством в течение последнего года, добавлял функции и проверки на основе собственного опыта инженера Outlook, а также предложений других инженеров. В этом феврале средство было выпущено, чтобы все наши клиенты могли загрузить и использовать его для проверки наличия потенциальных проблем в их календарях, что, как мы надеемся, позволит вам значительно сэкономить время при возникновении проблем с календарем Outlook.

Установка

Загрузите CalCheck в Центре загрузки Майкрософт.

Эта программа работает с:

  • Microsoft Office Outlook 2003;
  • Microsoft Office Outlook 2007;
  • Microsoft Office Outlook 2010 (32-разрядная версия);
  • Microsoft Office Outlook 2010 (64-разрядная версия);
  • Microsoft Exchange Server 2003;
  • Microsoft Exchange Server 2007;
  • Microsoft Exchange Server 2010.

Важно. 64-разрядная версия этого средства предназначена для использования только с 64-разрядной версией Microsoft Outlook 2010.

Загрузка представляет собой ZIP-файл — просто извлеките его в пустой каталог, откройте окно командной строки в этом каталоге и запустите средство.

Возможности CalCheck

Средство проверки календаря для Outlook (CalCheck) — это программа командной строки, которая проверяет календари Microsoft Outlook на наличие проблем. Средство открывает профиль Outlook для доступа к календарю Outlook. Оно выполняет различные проверки, такие как проверка разрешений, публикации сведений о доступности, конфигурации делегирования и автоматического резервирования. Затем каждый элемент в папке календаря проверяется на наличие известных проблем, которые могут вызвать непредвиденное поведение, например отсутствующие собрания.

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

Выполняемые проверки

Выполняются следующие проверки календарей и записываются в отчет:

  • разрешения для календаря;
  • делегаты для календаря;
  • информация о публикации сведений о доступности;
  • настройки прямого резервирования для почтового ящика или календаря;
  • общее число элементов в папке календаря.

Выполняются следующие проверки на уровне элементов и записываются в отчет:

  • отсутствие адреса электронной почты организатора;
  • отсутствие адреса электронной почты отправителя;
  • отсутствие свойства dispidRecurring (из-за этого элемент не отображается в представлении день/неделя/месяц);
  • наличие времени в свойствах dispidApptStartWhole и dispidApptEndWhole;
  • отсутствие темы для собраний, которые происходят в будущем, или повторяющихся собраний (записывается предупреждение);
  • проверка класса сообщения (записывается предупреждение);
  • dispidApptRecur (большой двоичный объект повторения) проверяется на наличие общего время начала и окончания, но не на исключения;
  • проверка элементов конфликтов в календаре;
  • проверка повторяющихся элементов на основе определенных свойств MAPI;
  • проверка числа повторяющихся собраний (если больше 1250, записывается предупреждение; если больше 1300, записывается ошибка); 1300 — максимальное значение;
  • проверка того, являетесь ли вы участником и стали ли вы организатором собрания;
  • проверка правильности размера данных исключения собрания.

Режим сервера

Вы также можете выполнить CalCheck в режиме сервера. В этом режиме CalCheck пытается открыть все почтовые ящики на сервере Exchange и выполнить проверки, указанные в разделе «Выполняемые проверки» данной статьи. В режиме сервера создается файл CalCheckSvr.log, в котором указываются почтовые ящики с ошибками. Кроме того, CalCheck создает отдельный файл CalCheck__.log для каждого почтового ящика. В этом файле представлены более подробные сведения о почтовом ящике.

Для применения режима сервера необходимо использовать профиль обмена сообщениями, связанный с учетной записью, у которой есть разрешения на все почтовые ящики на указанном сервере Exchange. Чтобы активировать режим сервера, используйте параметр командной строки «-S».

Пример

Выполнение проверки одного почтового ящика или календаря:

изображение

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

После выбора профиля запустится средство и вы увидите аналогичные результаты, если все выполняется успешно:

изображение

В этих окнах можно увидеть, что существует файл CalCheck.log, и где его можно найти. После его открытия вы увидите сведения, аналогичные следующим:

17.02.2012 17:09:20 Средство проверки календаря, версия 1.0
17.02.2012 17:09:20 ====================================
17.02.2012 17:13:45 Открывается почтовый ящик: почтовый ящик 17.02.2012 17:13:45 /O=Org/OU=OU/cn=Recipients/cn=Mailbox
17.02.2012 17:13:45 Местный часовой пояс: Восточное время США 17.02.2012 17:13:45 Успешно открыта папка календаря. 17.02.2012
17:13:45 Обработка календаря для почтового ящика
17.02.2012 17:13:46 Успешно найдено и открыто сообщение о доступности для этого почтового ящика.
17.02.2012 17:13:47 Публикация данных о доступности за 2 месяца на сервере.
17.02.2012 17:13:47 Планирование ресурсов/автоматически принимать запросы на участие в собрание, если отключено.
17.02.2012 17:13:47 ====================================
17.02.2012 17:13:47 Делегаты этого почтового ящика:
17.02.2012 17:13:47 ===========================
17.02.2012 17:13:47 Делегаты не настроены.
17.02.2012 17:13:47 ===========================
17.02.2012 17:13:47 Разрешения для этого календаря:
17.02.2012 17:13:47 =============================
17.02.2012 17:13:47 По умолчанию: нет
17.02.2012 17:13:47 Руководитель: рецензент
17.02.2012 17:13:47 Коллега1: нет
17.02.2012 17:13:47 Коллега2: рецензент
17.02.2012 17:13:47 Коллега3: рецензент
17.02.2012 17:13:47 =============================
17.02.2012 17:13:48 Обнаружено 1404 элементов в календаре. Выполняется обработка...
17.02.2012 17:13:48 ВНИМАНИЕ. В этом элементе нет темы. Возможно, требуется добавить тему в этот элемент.
17.02.2012 17:13:48 Свойства для анализа этого элемента: 17.02.2012 17:13:48 Тема:
Расположение: нет темы в повторяющемся элементе
Время начала: 11.01.2011 22:00:00
Время окончания: 11.01.2011 22:30:00
Кем изменено: почтовый ящик
Время последнего изменения: 04.02.2011 14:48:08
Является повторяющейся встречей: true
Имя отправителя: почтовый ящик
Адрес отправителя: /o=Org/ou=OU/cn=recipients/cn=Mailbox
Имя организатора: почтовый ящик
Адрес организатора: /o=Org/ou=OU/cn=recipients/cn=Mailbox
Начало повторения: 12:00:00.000 11.01.2011
Окончание повторения: 12:00:00.000 01.02.2011
Тип окончания повторения: завершается после X повторов
Число исключений: 0x0000
 
17.02.2012 17:13:50 ОШИБКА: обнаружен повторяющийся элемент в календаре. Проверьте этот элемент.
17.02.2012 17:13:50 Свойства для анализа этого элемента:
17.02.2012 17:13:50 Тема: встреча с врачом
Расположение: больница
Время начала: 04.03.2012 16:30:00
Время окончания: 04.03.2012 18:00:00
Кем изменено: почтовый ящик
Время последнего изменения: 01.08.2011 18:29:05
Является повторяющейся встречей: false
Имя отправителя: почтовый ящик
Адрес отправителя: /o=Org/ou=OU/cn=recipients/cn=Mailbox
Имя организатора: почтовый ящик
Адрес организатора: /o=Org/ou=OU/cn=recipients/cn=Mailbox

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

Параметры командной строки и их функции

CalCheck [-P ] [-M ] [-S ] [-A] [-F] [-R] [-V] [-No] CalCheck -?
 
-P имя профиля (если этот параметр не указан, средство запрашивает ввод профиля)
-M имя почтового ящика (если указан этот параметр, обрабатывается только заданный почтовый ящик)
-S имя сервера (обрабатывается весь сервер, если не указан почтовый ящик)
-A Все элементы календаря записываются в файл CALCHECK.CSV
-F Создается папка CalCheck, в которую перемещаются отмеченные элементы с ошибками
-R Записать сообщение отчета с файлом CalCheck.log в папку «Входящие»
-V Подробные результаты в окне командной строки
-No Пропуск теста элементов календаря
Параметр «No» работает с параметром «org» для пропуска проверки «Участник становится организатором» и работает с параметром «dup» для пропуска проверки повторяющихся значений
-? Печать этого сообщения

Дополнительные советы об определенных параметрах:

«-M» Используйте legacyExchangeDN для почтового ящика, а применяемый профиль должен быть для почтового ящика с разрешением для открытия этого почтового ящика.

«-A» Создается CSV-файл со всеми элементами календаря, по одному в каждой строке. Для каждого элемента указано несколько свойств, которые можно использовать для поиска проблем, не обнаруженных средством:

изображение

Вы можете просмотреть все элементы в календаре, открыв CSV-файл в Excel. Вы можете упорядочить и отфильтровать элементы на основе таких данных, как время начала, тема, повторяющиеся элементы и т. д. Это может быть полезно для поиска проблем, которые не обнаруживает CalCheck или которые в данный момент CalCheck не ищет. Если вы нашли проблемный элемент в CSV-файле, вы можете открыть календарь и включить представление категорий, чтобы получить аналогичное представление календаря в Outlook.

Для этого щелкните в Outlook вкладку «Вид», щелкните «Изменить представление» и выберите параметр «По категории». Тогда календарь будет выглядеть следующим образом:

изображение

изображение

В этом представлении все элементы в календаре показаны в виде списка, как при просмотре сообщений в папке «Входящие». Вы можете сортировать элементы по теме, расположению, времени начала и окончания. Это можно использовать для поиска проблемного элемента в папке календаря, если это сложно или невозможно в обычном представлении календаря.

«-F» Папка CalCheck создается в вашем списке папок, а элементы, отмеченные как «Ошибка», перемещаются в эту папку:

изображение

Элементы можно легко переместить назад в календарь или удалить их отсюда, если они не нужны, или исправить их, если это возможно, и вернуть в календарь. Общее правило здесь — воссоздать элемент и удалить элемент, перемещенный из папки CalCheck.

«-R» Сообщение электронной почты создается в папке «Входящие» с вложенным файлом CalCheck.log. Это полезно при запуске средства в режиме сервера, при этом каждый пользователь получит свой отчет в папке «Входящие»:

изображение

«-No» Существует два варианта: «-No org» и «-No dup».

При использовании варианта «-No org» проверка «участник становится организатором собрания» пропускается. Часть этой проверки использует legacyExchangeDN почтового ящика. Если значение legacyExchangeDN изменилось по какой-либо причине, например из-за миграции, этот тест покажет ошибки для элементов, которые могут и не содержать ошибки. Ошибки, записываемые CalCheck, отображают оба значения DN. Например:

21.12.2011 17:27:25 ОШИБКА: dispidApptStateFlags равно 1, но адрес для этого почтового ящика не совпадает с адресом организатора.
21.12.2011 17:27:25 Убедитесь, что адрес организатора указан правильно и должен ли этот пользователь быть организатором.
21.12.2011 17:27:25 Адрес организатора: /o=Org1/ou=admin group 1/cn=recipients/cn=user1
21.12.2011 17:27:25 DN для этого пользователя: /o=Org2/ou=admin group 2/cn=recipients/cn=user1
21.12.2011 17:27:25 Дополнительные сведения см. в статье KB 2563324: https://support.microsoft.com/default.aspx?scid=kb;EN-US;2563324
21.12.2011 17:27:25 Свойства для анализа элемента: 21.12.2011 17:27:25 Тема: тест

Почтовый ящик в этом примере — это тот же фактический почтовый ящик, но так как изменилось значение legacyExchangeDN, он отмечен как ошибка.

При использовании параметра «-No dup» пропускается поиск повторяющихся значений, так как этот тест создает в памяти список элементов и проверяет каждый из них по данному списку. Это может замедлить процесс из-за дополнительной нагрузки на процессор и большего использования памяти.

Чего CalCheck не делает

  • CalCheck — это средство только для создания отчетов. Оно не изменяет и не исправляет автоматически какие-либо элементы. Оно перемещает элементы, отмеченные как ошибка, в папку CalCheck, если используется параметр «-F», но в противном случае никакие изменения в элементы не вносятся.
  • CalCheck работает только с календарями, расположенными на сервере Exchange. Средство не работает с другими серверами, такими как IMAP, POP3 и т. д.
  • CalCheck не может найти все виды повреждений элемента календаря. Но данное средство может обнаружить известные проблемы, которые можно устранить, не тратя много времени на работу с календарем или общение со службой поддержки.

Отзывы

Пожалуйста, оставляйте свои отзывы! Лучшее место для них — https://calcheck.codeplex.com/discussions

Если у вас возникла проблема с CalCheck, вы можете опубликовать сведения о ней по адресу https://calcheck.codeplex.com/workitem/list/basic

Спасибо. Я надеюсь это поможет сэкономить время на диагностику и устранение проблем с календарем.

Рэнди Топкен (Randy Topken)
старший инженер по расширению технической поддержки
группа Outlook

Это локализованная запись блога. Исходная статья находится по адресу CalCheck - The Outlook Calendar Checking Tool