Archiv pro štítek: reporting

System Center Operations Manager – odkazy

Operations Manager na stránkách MS Technet (komunity System Center)

  • Blog – System Center: Operations Manager Engineering Blog
  • Forums – diskuzní skupiny SCOM – různá témata a dotazy k problémům
  • Library – příručky a postupy
  • Gallery – zdroje SW a příspěvky uživatelů
  • Wiki – system center Management Portal
  • Survival Guide – webová příručka
  • Learn – dokumentace

Kniha: Microsoft System Center Operations Manager Field Experience

Microsoft_System_Center_Operations_Manager_Field_Experience_108x132px
Elektronická kniha Microsoft System Center Operations Manager Field Experience
autorů Dannyho Hermanse, Uwe Stürtze, Mihai Sarbulescua; a editora Mitche Tullocha,
čerstvě vydaná v dubnu 2015, 128 stran
Užitečné informace pro návrh, konfiguraci, implementování a řízení monitorovacího prostředí systému Microsoft System Center Operations Manager. Vhodné i pro ostřílené administrátory – naučí nové postupy a pomůže pochopit interní souvislosti SCOMu.
Volně k dispozici na stránkách http://www.microsoftvirtualacademy.com/ebooks:
Download the PDF (3.27 MB)
Velmi doporučuji.

SCOM: přehled možností, nástrojů a návody pro Reporting

scomReportingMsPřed nějakým časem jsem se docela podrobně věnoval zpracování výstupů z databází System Center Operations Manager – tedy oblasti reportingu, jak se tomu zkráceně říká. Mezitím šel vývoj SCOM i SQL Serveru dál, přibyly nové nástroje a je zde také nová přehledná publikace, která mi nejen připomenula používané postupy, ale je také užitečná pro každého, kdo je v této oblasti nováčkem a potřebuje se zorientovat. Neomezuje se na výčet nástrojů, uvádí konkrétní příklady i postupy a návody.

Reporting je jedna z nejméně používaných vlastností Operations Manageru, nikoliv pro jeho omezení, ale spíš proto, že vyžaduje znalosti SQL serveru, zejména SQL Server Reporting Services. Ačkoliv SCOM poskytuje řadu standardních reportů, jejich využití a hlavně tvorba nových vyžaduje středně pokročilé znalosti a dovednosti SQL serveru. Kniha nám v tomto směru hodně pomůže.

Knihu najdete na stránce http://www.microsoftvirtualacademy.com/ebooks ve formátech pdf, epub a mobi, včetně vzorových příkladů ke stažení.

Doporučuji.

SQL collation „SQL_Latin1_General_CP1_CI_AS“

Aktualizace 2014:

Požadavky na databázový server pro SCOM 2012 R2(http://technet.microsoft.com/library/dn281933.aspx) uvádějí: SQL_* collations are being deprecated for their Windows equivalents.

Zatím stále zůstává požadavek stejného nastavení pro databáze DW a temp, pracovní databáze SCOMu může být s jiným nastavením, ale pouze pokud je na jiném databázovém serveru. Microsoft se postupně snaží tyto požadavky mezi jednotlivými komponentami System Center sjednotit, ale jde to pomalu. Podrobnosti zde

The SCOM data warehouse installer will always install the data warehouse with SQL_Latin1_General_CP1_CI_AS regardless of the SQL Server collation.  Until this issue is fixed, please always install the SCOM data warehouse on a SQL Server with the SQL_Latin1_General_CP1_CI_AS collation.  There are some compatibility issues when the Temp database on the DW SQL Server instance is anything other than SQL_Latin1_General_CP1_CI_AS and the data warehouse DB is SQL_Latin1_General_CP1_CI_AS.

Původní můj článek z 3. 2. 2012:

Dva nové užitečné reporty ze sady Microsoft.Windows.Server.Reports.mp, která je součástí sady pro Windows Server Operating System Management Pack for Operations Manager 2007 verze 6.0.6958.0 (zde ) striktně vyžadují správné nastavení volby Collation už při instalaci samotného serveru SQL. U jiných reportů jsem se s podobným problémem ve svém letitém testovacím prostředí nesetkal. Samotné databáze OperationsManager toto nastavení mají – což je zřejmě kolizní stav …?

Nastavení serveru:

Nastavení databáze:

Reporty:

Chyba:

Změnit se to dá bohužel pouze novou instalacií serveru SQL:

Workaround:
When installing SQL server be sure to select SQL collation SQL_Latin1_General_CP1_CI_AS. If OpsMgr has already been installed you will have to reinstall SQL and OpsMgr to change the SQL collation. (SQL collation „SQL_Latin1_General_CP1_CI_AS“ needs to be designated for installing OpsMgr DB).

Reporty jsou oba velmi užitečné, jak napovídají i oba příklady uvedené na blogu Kevina Holmana:

 a

 

Report Builder: Formát času a data v reportu

Ve výchozím nastavení se zobrazují časové údaje v ‚americkém‘ formátu –  měsíc/den/rok a dvanáctihodinový formát denního času AM/PM:

Pokud požadujeme zobrazení ve formátu obvyklém v těchto evropských krajích, změníme parametr Localization / Language ve vlastnostech definovaného reportu. Vyhovuje mi volba ‚cs-CZ

Tato volba ovlivňuje formáty všech nově přidávaných prvků (a prvků, u kterých výslovně neuvedeme jiný formát ve vlastnostech prvku).

Vložení kódu do sestavy v Report Builderu 2.0

Report Builder 2.0 umožňuje vkládat a používat vlastní kód Visual Basic pro výpočty a nebo zpracování textových řetězců. Kód lze samozřejmě vložit přímo do definičního souboru RDL, který je ve formátu XML – mezi značky <Code> a </Code> např. jako Public Function EventDisplayNumber. Funkci potom použijeme na příslušném místa při zpracování, zde pro získání informace z položky Alert.Context:

=Code.EventDisplayNumber(Fields!Context.Value)

Elegantnější je vložení kódu při návrhu sestavy v přímo v nástroji Report Builder. Místo, kde se kód vloží je dostupné po zobrazení vlastností sestavy (Report Properties) na záložce Code


Report Builder 2.0 – ClickOnce version

Tvůrce sestav – Report Builder 2.0 je k dispozici jako samostatný instalační balíček určený k instalaci na pracovní stanici – taková instalace umožňuje vytvoření sestavy – reportu i bez přítomnosti serveru se službou SQL Reporting Services. Vedle toho existuje možnost spustit Report Builder také z prostředí internetového prohlížeče (verze označená ClickOnce), z adresy

http://<server>/reports

z nabídky Report Builder se však i v prostředí s SQL Reporting Services 2008 SP1 spustí původní verze – Report Builder 1.0. Verze 2.0 je po aplikaci SP1 na serveru přítomna, ale je třeba ještě provést drobnou změnu aby se dala z prohlížeče spustit.  Použijeme konfiguraci Site Settings:

Na následující stránce zadáme do pole Custom Report Builder launch URL cestu k verzi 2.0:
http://<server>/ReportServer/ReportBuilder/ReportBuilder_2_0_0_0.application
a potvrdit tlačítkem Apply:

Od této chvíle nabídka Report Builder na domovské stránce http://<server>/Reports bude spouštět „Tvůrce sestav“ verze 2.0.

Přepočet času UTC na aktuální místní čas CET nebo letní CEST

Údaje o čase jsou v databázích SCOMu zapisované ve světovém univerzálním čase UTC, výjimkou je databáze OperationsManagerAC, která může časové údaje zaznamenávat buď ve formátu UTC nebo při instalaci zvolíme místní časové pásmo CET (tj. UTC+1). To je výhodné, pokud jsou v databázi všechny záznamy od serverů z jednoho časového pásma. Druhou výhodou je, že se nemusíme starat o změny při přechodu na letní čas a zpět.

CET   ->   CEST   ->   CET
nebo (UTC + 1   ->   UTC + 2   ->   UTC + 1)

V reportech, které vytvářím pomocí Visual Studia (SQL Server Bussines Inteligence Development Studio) můžeme zajistit ve výstupu přepočet časových údajů na aktuální čas našeho pásma CET (central european time, UTC+1) i v době platnosti letního času CEST (central european summer time, UTC+2) použitím kódu Visual Basic. Po zjištění aktuálního času v UTC je skriptem přidána jedna hodina nebo dvě hodiny v době platnosti letního času:


PublicFunction DateTimeUTC2Local(ByVal od As String) As Date 

Dim offset, i As Integer
Dim startDST, endDST As Date
Dim nd As String
offset = 1
' find last Sunday in March
For i = 31 To 25 Step -1
  If Weekday( "3/" & i & "/" & Year(od)) = 1 Then
    startDST = DateAdd("h", 1, CDate("3/" & i & "/" & Year(od)))
    Exit For
  End If
Next
' find last Sunday in October
For i = 31 To 25 Step -1
  If Weekday( "10/" & i & "/" & Year(od)) = 1 Then
    endDST = DateAdd("h", 1, CDate("10/" & i & "/" & Year(od)))
    Exit For
  End If
Next
' add hour to offset if within DST
If CDate(od) >= startDST And CDate(od) < endDST Then
  offset = offset + 1
End If
nd = DateAdd("h", offset, od)
Return nd
End Function

Použití kódu VBS v nástroji SQL Server Bussines Inteligence Development Studio:

Pokračujeme konfigurací z nabídky Report | Report Properties. Zde na záložce General vyplníme popis reportu (autor, popis). Na záložce Code vložíme kód, který použijeme při přepočítávání časového údaje:

Pro použití kódu v reportu, v poli které z databáze vybere čas ve formátu UTC, vypočítáme platný místní čas CET / CEST takto:
například čas, získaný dotazem z databáze OperationsManager ve sloupci Alert.TimeRaised – ve výstupním formuláři použijeme v příslušném sloupci následující výraz pro výpočet (Expression) s uvedením výše definované funkce:
=Code.DateTimeUTC2Local(Fields!TimeRaised.Value)


ReportBuilder

Potřebujeme-li podobnou funkčnost reportu zajistit také z editačního prostředí nástroje ReportBuilder, nemůžeme použít vlastní kód (alespoň mi to není známo – použití ReportBuilderu verze 2.0 a 3.0 jsem ještě nezkoumal).

Kód musíme napsat přímo do formátovacího pole, implementace výše uvedeného algoritmu by byla příliš složitá, proto postupuji takto:

  1. zjistím datum přechodu na letní čas a zpět pro aktuální období pro data v databázi,
  2. v příslušném sloupci při vytváření vzorce pro výpočet uvedu vzorec.
    Příklad: vstupní čas (LogonTime) je ve formátu UTC,
    přechod z letního času CEST na standardní CET je poslední neděli v říjnu v 1:00 hodin UTC,
    přechod na letní času CEST ze standardního CET je poslední neděli v březnu ve 3:00 hodin UTC, definice výrazu je tedy pro současné období:

 


IF(LogonTime < DATETIME(2010;10;31;1;0;0);
   DATEADD(HOUR;2;LogonTime); //přidat 2 hodiny, letní čas CEST
   IF(LogonTime < DATETIME(2011;3;27;1;0;0);
      DATEADD(HOUR;1;LogonTime); //přidat 1 hodiny, standardní čas CET
      DATEADD(HOUR;2;LogonTime) //přidat 2 hodiny, letní čas CEST
   )
)


 

SQL Server Reporting Services ve službách System Center Operations Managera

Toto je úvodní článek ze série, která volně navazuje na články publikované na mém archivním blogu Nejde jen o software . . . a zaměřuje se na Microsoft SQL Reporting Services pro SCOM. Začneme stručným přehledem.

Databáze, které systém SCOM používá a jsou k dispozici jako zroje dat pro naše reporty:

  • OperationsManagerDW – data warehouse, standardní reporty dodávané spolu s pravidly (Management Pack),
  • OperationsManager – databázi lze použít pro vlastní reporty z dat krátkodobě uložených, využití informace, která se nedostane do data warehouse,
  • OperationsManagerAC – dodávané i vlastní reporty s bezpečnostním zaměřením (audit collection system)

Nástroje Microsoftu určené k vytváření reportů jsou k dispozici v podstatě dva:

  • ReportBuilder (vyžaduje definici datového modelu – report model, to je jednoduše splněno v případě použití databáze OperationsManagerAC, pro kterou je dodáván soubor definic AUDIT.SMDL (semantic model, formát XML). Pro ostatní dvě databáze musíme nejprve vytvořit definici SMDL, pokud hodláme použít ReportBuilder.
  • SQL Server Bussines Inteligence Development Studio (zde máme největší volnost při výběru zdroje dat, formátování výstupů a začlenění vlastních výpočtů)

Microsoft SQL Server Reporting Services (SSRS) doznaly mezi verzemi 2005 a 2008 zásadní změnu v tom, že nyní nepotřebují Internet Information Services (IIS) a potřebnou funkčnost zajišťují vlastní službou, s plně zachovanou kompatibilitou vzhledem k předchozím verzím. Jsou zde také nové verze nástroje ReportBuilder (v.2 a v.3), v dalších článcích se budeme zabývat podrobně jejich použitím a konkrétními příklady.