Posts tagged ‘отчёты’

компьютеры с определёнными обновлениями и без них

По работе пришлось создать два кастомных отчёта: компьютеры с определёнными установленными обновлениями и определённым именем и компьютеры без установленных обновлений. Обычно в таких случаях используются стандартные отчёты, но у нас эти обновления были установлены через пакеты, а объявления позже были удалены, что делало невозможным поиск этой информации в обычных отчётах.

Давно не брал я в руки шашек.:)

SELECT DISTINCT TOP (100) PERCENT dbo.v_R_System.Netbios_Name0
FROM dbo.v_R_System INNER JOIN
dbo.v_GS_QUICK_FIX_ENGINEERING ON dbo.v_R_System.ResourceID = dbo.v_GS_QUICK_FIX_ENGINEERING.ResourceID
WHERE (dbo.v_R_System.Netbios_Name0 LIKE '%PARX0100%' OR
dbo.v_R_System.Netbios_Name0 LIKE '%PARX0602%' OR
dbo.v_R_System.Netbios_Name0 LIKE '%PARX0603%') AND (dbo.v_GS_QUICK_FIX_ENGINEERING.HotFixID0 LIKE '%2427997%' OR
dbo.v_GS_QUICK_FIX_ENGINEERING.HotFixID0 LIKE '%2531912%' OR
dbo.v_GS_QUICK_FIX_ENGINEERING.HotFixID0 LIKE '%2521923%' OR
dbo.v_GS_QUICK_FIX_ENGINEERING.HotFixID0 LIKE '%2577550%' OR
dbo.v_GS_QUICK_FIX_ENGINEERING.HotFixID0 LIKE '%2706168%')
ORDER BY dbo.v_R_System.Netbios_Name0
SELECT DISTINCT TOP (100) PERCENT Netbios_Name0
FROM dbo.v_R_System
WHERE (Netbios_Name0 NOT IN
(SELECT v_R_System_1.Netbios_Name0
FROM dbo.v_R_System AS v_R_System_1 INNER JOIN
dbo.v_GS_QUICK_FIX_ENGINEERING AS v_GS_QUICK_FIX_ENGINEERING_1 ON
v_R_System_1.ResourceID = v_GS_QUICK_FIX_ENGINEERING_1.ResourceID
WHERE (v_GS_QUICK_FIX_ENGINEERING_1.HotFixID0 LIKE '%2427997%') OR
(v_GS_QUICK_FIX_ENGINEERING_1.HotFixID0 LIKE '%2521923%') OR
(v_GS_QUICK_FIX_ENGINEERING_1.HotFixID0 LIKE '%2577550%') OR
(v_GS_QUICK_FIX_ENGINEERING_1.HotFixID0 LIKE '%2706168%') OR
(v_GS_QUICK_FIX_ENGINEERING_1.HotFixID0 LIKE '%2531912%'))) AND (Netbios_Name0 LIKE '%PARX0100%' OR
Netbios_Name0 LIKE '%PARX0101%' OR
Netbios_Name0 LIKE '%PARX0603%')
ORDER BY Netbios_Name0

расширение инвентаризации при помощи MIF

Как известно, SCCM умеет инвентаризировать реестр и WMI. Часто возникает ситуация, когда собираемых сведений недостаточно и инвентаризацию нужно расширить, например, добавить в отчёт информацию о дате закупки ПК, переноса на другое рабочее место, серийный номер с наклейки на корпусе и т.д. Сделать это можно тремя способами, добавляя (или регулярно добавлять скриптами, обновляя) информацию в:

1. реестр и научить SCCM опрашивать нужные ветки и ключи;

2. WMI и научить SCCM опрашивать нужные классы;

3. MIF-файл. Учить не нужно: SCCM уже умеет вычитывать информацию из MIF-файлов (Management Information Format).

Организация Distributed Management Task Force (DMTF) занимается разработкой и поддержкой стандартов для управления системами. DMTF разработала CIM, WBEM (и его реализация на Windows — WMI), DMI и прочие стандарты, которые используются множеством вендоров. DMI — устаревший стандарт для управления программным обеспечением и аппаратными комплектующими, не зависим от вендора, операционной системы, протоколов управления и «железа».

DMI-архитектура состоит из DMI Service Provider (Service Layer — в старых спецификациях) — локальной резидентной программы, постоянно работающей в памяти, которая является связующим звеном между интерфейсом управляющей программы (Management Interface, MI), которая запрашивает информацию из MIF-базы, и DMI-совместимыми программами и аппаратными комплектующими (Component Interface, CI), которые через свой API вносят информацию в MIF-базу. Информация должна быть описана при помощи MIF — системонезависимого формата, а файлы, содержащие информацию о приложениях и комплектующих, называются MIF-файлами. Вся эта схема выглядит примерно так:

А если сказать совсем просто, то SCCM работает с DMI Service Provider через агента аппаратной инвентаризации, который умеет собирать информацию из MIF-файлов. SCCM умеет работать с IDMIF и NOIDMIF.

IDMIF — файлы с уникальным идентификатором, которые не ассоциированы с клиентом SCCM. Эти файлы отсылаются отдельно от отчёта по инвентаризации. В эти файлы вносят информацию, которая не связана напрямую с компьютером, например, имя копира или модель проектора. При удалении этих файлов с компьютера, информация из базы SCCM не удаляется.

NOIDMIF — файлы, привязанные к идентификатору компьютера, с которого они собраны. Информация из NOIDMIF прикрепляется к отчёту об инвентаризации. В эти файлы вносят информацию, связанную с компьютером, например, серийный номер и т.п. При удалении файлов с компьютера, информация удаляется из базы SCCM.

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

Continue reading ‘расширение инвентаризации при помощи MIF’ »

компьютеры с Internet Explorer

Компьютеры с IE 8:

SELECT TOP (100) PERCENT dbo.v_R_System.Name0 AS [Computer name], dbo.v_R_System.User_Name0 AS [User name],
dbo.v_GS_ADD_REMOVE_PROGRAMS.DisplayName0 AS [IE name]
FROM dbo.v_R_System INNER JOIN
dbo.v_GS_ADD_REMOVE_PROGRAMS ON dbo.v_R_System.ResourceID = dbo.v_GS_ADD_REMOVE_PROGRAMS.ResourceID
WHERE (dbo.v_GS_ADD_REMOVE_PROGRAMS.DisplayName0 = ‘Windows Internet Explorer 8’)
ORDER BY [Computer name]

Компьютеры с IE 9:

SELECT DISTINCT
TOP (100) PERCENT dbo.v_R_System.Name0 AS [Computer name], dbo.v_R_System.User_Name0 AS [User name], dbo.v_GS_SoftwareFile.FileName AS [IE name],
dbo.v_GS_SoftwareFile.FileVersion AS [IE version]
FROM dbo.v_GS_SoftwareFile INNER JOIN
dbo.v_R_System ON dbo.v_GS_SoftwareFile.ResourceID = dbo.v_R_System.ResourceID
WHERE (dbo.v_GS_SoftwareFile.FileName = ‘iexplore.exe’) AND (dbo.v_GS_SoftwareFile.FileVersion LIKE ‘9.%’)
ORDER BY [Computer name]

таблицы против представлений

Как известно, Microsoft не публикует информацию о таблицах базы данных SCCM. Я думаю, сделано это по двум причинам: во-первых, структура базы в любой момент может измениться, например, после выхода сервис-пака; во-вторых, снижение количества инцидентов, связанных с любопытством администраторов SCCM (то, что в народе называют «защитой от дурака»).

Часто можно встретить: «У меня не работает отчёт select … from SMS_R_SYSTEM. Где я ошибся в запросе?».

Так в чём разница между отчётами и запросами?

SCCM использует WMI для управления объектами. Информация об объектах хранится в базе SQL Server. При создании коллекции или запроса вы через консоль отправляете WQL(WMI Query Language)-запрос на сервер с установленной ролью SMS Provider (сервер выбирается при установке SCCM, впоследствии роль может быть перенесена на другой сервер), который, в свою очередь, обращается к базе данных и отображает информацию, которую вы запросили. Имена WMI-классов, которые сопоставляются с таблицами базы SCCM, начинаются на SMS_. Например,

select * from SMS_R_System

Соответственно, коллекция, построенная на основе такого запроса, будет содержать абсолютно все учётные записи компьютеров, о которых знает SCCM:

Continue reading ‘таблицы против представлений’ »

SMS SRS Reporting Point failed to monitor SRS Server

Ежечасно компонент SMS_SRS_REPORTING_POINT сыпет ошибкой ID 7402: «SMS SRS Reporting Point failed to monitor SRS Server on «DC». При этом SQL Reporting Services работают, ссылки http://dc/Reports и http://dc/reportserver доступны, отчёты открываются.

srsrp.log:

Microsoft.ConfigurationManagement.Srs.SrsServer. error = The system cannot find the file specified. SMS_SRS_REPORTING_POINT 01.01.1601 0:00:00
STATMSG: ID=7402 SEV=E LEV=M SOURCE=»SMS Server» COMP=»SMS_SRS_REPORTING_POINT» SYS=DC SITE=000 PID=2496 TID=2548 GMTDATE=Mon Apr 04 11:59:24.936 2011 ISTR0=»DC» ISTR1=»» ISTR2=»» ISTR3=»» ISTR4=»» ISTR5=»» ISTR6=»» ISTR7=»» ISTR8=»» ISTR9=»» NUMATTRS=0 SMS_SRS_REPORTING_POINT 01.01.1601 0:00:00
Failures reported during periodic health check by the SRS Server DC. Will retry check in 57 minutes SMS_SRS_REPORTING_POINT 01.01.1601 0:00:00

С системы сайта удаляем роль ConfigMgr Reporting Services point, устанавливаем её заново с параметрами по умолчанию и через ConfigMgr Service Manager перезапускаем SMS_SRS_REPORTING_POINT:

отчёт по последней загрузке и инвентаризации

Набросал вот простой отчёт по последней загрузке системы, авторизировавшемуся пользователю и инвентаризации.

SELECT DISTINCT
dbo.v_R_System.Name0 AS [PC name], dbo.v_GS_OPERATING_SYSTEM.Caption0 AS [Operation System],
dbo.v_GS_OPERATING_SYSTEM.CSDVersion0 AS [Service pack], dbo.v_GS_COMPUTER_SYSTEM.UserName0 AS [Last logon user],
dbo.v_GS_WORKSTATION_STATUS.LastHWScan AS [Last hardware inventory], dbo.v_GS_OPERATING_SYSTEM.LastBootUpTime0 AS [Last bootup time]
FROM         dbo.v_R_System INNER JOIN
dbo.v_GS_COMPUTER_SYSTEM ON dbo.v_R_System.ResourceID = dbo.v_GS_COMPUTER_SYSTEM.ResourceID INNER JOIN
dbo.v_GS_WORKSTATION_STATUS ON dbo.v_R_System.ResourceID = dbo.v_GS_WORKSTATION_STATUS.ResourceID INNER JOIN
dbo.v_GS_OPERATING_SYSTEM ON dbo.v_R_System.ResourceID = dbo.v_GS_OPERATING_SYSTEM.ResourceID

новые вебкасты

Desired Configuration Management, ч.2

Импортирование configurations pack, просмотр отчётов, создание коллекций на основе информации, полученной от Desired Configuration Management.

Отчёты

Установка Reporting Point, просмотр отчётов, создание dashboards и собственных отчётов.

Комментарии и пожелания приветствуются.

мониторинг состояния клиентов

Часто можно встретить вопрос: как узнать, «живой» ли клиент?
Для этого нужно установить Client Status Reporting. Минимальные требования — SCCM 2007 R2. Инсталляционные файлы находятся в папке с R2. Запускаем msi:

Continue reading ‘мониторинг состояния клиентов’ »

Software Metering

Моя статья, опубликованная в декабрьском номере Windows IT Pro/RE, в расширенном варианте появилась на itband.ru.

SuperFlows

SCCM writing team выпустила т.н. SuperFlows: интерактивные приложения с блок-схемами внедрения функционала и детальным описанием каждого шага. Другими словами, теперь можно не разрисовывать на бумаге этапы планирования и настройки, и ответить на вопросы «А что я ещё не сделал?» и «Почему внедрённый функционал не работает?». В общем, SuperFlow — приятно оформленный интерактивный помощник, который, к тому же, позволяет переконвертировать текст в формат MS Word.
Из требований — только .NET Framework 3.5 SP1. Работают SuperFlows и на клиентских компьютерах с Windows Vista и Windows 7. На данный момент доступны SuperFlows для Software Updates и SQL Server Reporting Services. Забрать можно здесь.