Be Geek My Friend

Daniel Matey, Ingeniero Preventa Datacenter, Microsoft

WSUS 3.0, Evaluando la situación 3ª Parte: "Obteniendo la información para el informe"

WSUS guarda su información en SQL Server 2005 SP1 o en una base de datos “interna” que es en realidad un SQL Server Express pero sin las herramientas de administración.

La buena noticia es que podemos acceder a la información almacenada en la base de datos para crear nuestros propios informes.

En este artículo veremos cómo recoger los datos básicos, que mas tarde uniremos con el directorio activo para generar un informe global de la situación de actualizaciones.

La base de datos de WSUS se llama “SUSDB” y provee de una serie de vistas públicas que son las que se supone que deberíamos usar para crear nuestros informes.

Desgraciadamente estas vistas son un tanto enrevesadas y no incluyen algunos datos que queremos así que tendremos que acceder directamente a las tablas en las que se almacena la información, usar las tablas no está recomendado ni soportado y hay que entender que cualquier Service Pack o actualización de WSUS podría modificar el esquema de dichas tablas y nuestros informes dejarían de funcionar.

Tendremos que usar dos tablas.

-tbComputerTarget, que contiene la lista de todos los ordenadores conectados al WSUS y su información básica como cuando se conectaron por última vez, la ip, etc.

-tbComputerSummaryForMicrosoftUpdates, que nos permitirá saber cuántas actualizaciones tiene pendiente cada ordenador, cuantas ha instalado ya, etc.

Estas dos tablas tienen un campo que nos permite unirlas y que se llama TargetID.

Por lo tanto la siguiente instrucción creara una vista que nos dará una visión detallada del estado de las actualizaciones.

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[vWsusDetalle]

AS

select

      WSUSComputers.FullDomainName as [Nombre Maquina],

      WSUSComputers.LastSyncTime as [Ultima Sincronización],

      WSUSComputers.LastReportedStatusTime as [Ultima Conexión],

      WSUSSumary.Unknown as Desconocido,

      WSUSSumary.NotInstalled as [No Instaladas],

      WSUSSumary.Downloaded as [Necesarias],

      WSUSSumary.Installed as [Instaladas],

      WSUSSumary.Failed as [Errores],

      WSUSSumary.InstalledPendingReboot as [Pendientes De Reinicio]

 

from

      tbComputerTarget WSUSComputers

inner join

      tbComputerSummaryForMicrosoftUpdates WSUSSumary

on

      WSUSComputers.TargetID= WSUSSumary.TargetID

Para obtener una información sumariada usaremos esta otra query que aunque poco elegante es efectiva y nos mostrara cuantos ordenadores tenemos en cada situación y cuantos ordenadores están administrados por el WSUS.

Select

      'Maquinas Administradas' as Contador,

      count(*) as Valor

from

      vWsusDetalle

Union All

select

      'Desconocido/ No Aplicable' as Contador,

      count(*) as Valor

from

      vWsusDetalle

Where

      Desconocido > 0

union all

select

      'No Instaladas' as Contador,

      count(*) as Valor

from

      vWsusDetalle

where

      [No Instaladas]>0

union all

select

      'Necesarias' as Contador,

      count(*) as Valor

from

      vWsusDetalle

where

      Necesarias>0

union all

select

      'Con Errores' as Contador,

      count(*) as Valor

from

      vWsusDetalle

where

      Errores >0

union all

select

      'Pendientes De Reinicio' as Contador,

      count(*) as Valor

from

      vWsusDetalle

where

      [Pendientes De Reinicio] >0

En la siguiente parte de esta serie de artículos veremos cómo unir estos datos con el directorio activo para saber cuántos ordenadores hay en total en el directorio activo que no se estén usando y cuantos hay que se están usando y no se están en contacto con el WSUS, después veremos cómo juntar todo esto en un informe hecho con Reporting Services.

Posted: 6/5/2007 19:33 por Daniel Matey | con 2 comment(s)
Archivado en:
Comparte este post:

Comentarios

Carlos ha opinado:

Hola Daniel,

¿Para cuando el siguiente artículo?

El de integración de los datos en AD y el uso del Reporting Services.

Sigo esperándolo ansioso.

PD: Muy buena web, con información precisa.

# September 10, 2007 5:27 PM

Jimcesse ha opinado:

Excelente aporte, me funciona muy bien el query...!

Para cuando AD???

Saludos,

Jimcesse

# May 31, 2010 11:30 PM