890 likes | 1.04k Views
XINFO . Das IT - Informationssystem. IT Charts Implementierung. H O RIZONT Software für Rechenzentren. Garmischer Str. 8 D- 80339 München Tel ++49(0)89 / 540 162 - 0 www.horizont-it.com. Agenda. Datenhaltung IT Charts. Fragen zum Erstellen neuer Grafiken. Verwaltungslauf. Beispiel 1.
E N D
XINFO Das IT - Informationssystem IT Charts Implementierung HORIZONT Software für Rechenzentren Garmischer Str. 8 D- 80339 München Tel ++49(0)89 / 540 162 - 0www.horizont-it.com
Agenda Datenhaltung IT Charts Fragen zum Erstellen neuer Grafiken Verwaltungslauf Beispiel 1 Beispiel 2 Beispiel 3
Vorwort • Im folgenden wird die Abkürzung ITC verwendet. ITC steht für IT-Charts. • Die Datei ITC.INI stellt die XINFO Parameterdatei für IT-Charts dar.
Datenhaltung IT-Charts allgemein • Alle Daten werden in einer eigenen XINFO- Tabelle gespeichert. • Durch die Beschreibung in der ITC.INI wird die Bedeutung der Werte in den Spalten festgelegt. • Daten aus der Tabelle können dupliziert und für andere Grafiken verwendet werden. • Bedingung: Daten, die für IT-Charts geladen werden, benötigen eine vordefinierte Struktur.
Datenhaltung I/IV - Tabelle Die Werte in der Y-Spalte stellen die Anzahl Jobs dar. Die Werte in der X-Spalte stehen für jede volle Stunde
Datenhaltung II/IV - Grafik Legende Anzahl Jobs Stunden Skala
Datenhaltung III/IV - Tabelle Die Werte in der Y-Spalte stellen eine Uhrzeit dar. Die Werte in der X-Spalte stehen für ein Datum
Datenhaltung IV/IV - Grafik Legende Uhrzeit Kurve 2 Kurve 1 Tag im Monat
Fragen zum Erstellen neuer Grafiken • Was soll dargestellt werden? • Wie soll die Grafik aussehen? • Was und wo sind die Ausgangsdaten? • Welchen Zeitraum soll die Grafik darstellen? Benötigt man mehrere Grafiken? • Jahresübersicht • Monatsübersicht • Vorjahres/Jahresvergleich • Gibt es bereits Daten in einer anderen Form? • außerhalb von XINFO • oder in einer anderen Grafik in IT-Charts
Schritte für eine Grafik • Design und Datenquelle für Grafik festlegen. • Auswertungsjob codieren und testen. • Auswertungsdaten in Verwaltungslauf einbinden. • View erstellen und in DB2 einstellen. • View im XINFO mit Table Manager einbinden • Mit Display-Generator im XINFO-Display erstellen. • Im XINFO PC-Client ITC.INI anpassen.
Existierende Beispiele • Im ITC Handbuch XXRDITCD sind Beispiele enthalten. • Verschiedene Beispiele über Anzahl Definitionen für Jobs, TWS, CA7 und Control-M • Beispiele über Servicellevel in Prozent, Uhrzeit sowie Anzahl. • Beispiele mit Jahres-/Vorjahres-Vergleich. • Verfügbarkeit und Belegung von Plattenplatz.
Struktur des Verwaltungslaufes Datei1 Datei2* Datei3 Severaldata filesout of ITCXASQL XINFO database(DB2 ) XXRTITC ParamFile Unload XINFO table XXRTITC in PS structure Sort inputfiles Administration run ITCXADMV Protocolfile Savedeletedrecords New XXRTITC
Protokoll des Verwaltungslaufes **************************************************************** ***** ITC-Load Data: Administration RUN ***** ***** Protocol from ITCXADMV from 04/07/06 AT 11:11:40 ***** **************************************************************** 13 ^ TOTAL MANUAL UPDATE RECORDS. 0 ^ ARE DUPLICATE. 0 ^ DELETE, CAUSE EXPIRATION DATE WAS REACHED. 0 ^ WITHOUT VALID DISPLAY. 0 ^ WITH DELETE COMMAND. 0 ^ WITH MISSING FIELDS. 57 ^ TOTAL READ PARAMETER RECORDS. 0 ^ DUPLICATE PARAMETER RECORDS. 6242 ^ TOTAL NEW RECORDS FOR XXRTITC. 0 ^ NEW RECORDS WITHOUT VALID DISPLAY. 0 ^ DELETE, CAUSE EXPIRATION DATE WAS REACHED. 0 ^ NEW RECORDS WITH FILLUP FOR XXRTITC. 40028 ^ TOTAL READ RECORDS FROM XXRTITC. 0 ^ DELETE, CAUSE DISPLAY GROUP IS MISSING. 0 ^ DELETE, CAUSE EXPIRATION DATE WAS REACHED. 46270 ^ TOTAL WROTE RECORDS FOR XXRTITC. 0 ^ LIST OF MANUAL UPDATE RECORDS ARE DUPLICATE. 0 ^ LIST OF MANUAL UPDATE RECORDS ARE DELETE, EXPIRATION DATE. 0 ^ LIST OF MANUAL UPDATE RECORDS WITHOUT VALID DISPLAY. 0 ^ LIST OF MANUAL UPDATE RECORDS WITH DELETE COMMAND. 0 ^ LIST OF MANUAL UPDATE RECORDS WITH MISSING FIELDS. . . . .
Beispiel 1 Aufgabenstellung Ausgangsdaten Erstellen Abfragejob Aufbereiten der Daten Verwaltungslauf Definitionen im DB2 Definitionen im XINFO Definitionen im ITC.INI Anzeigen Grafik
Aufgabenstellung • Es sollen alle HOST-Batchjobs gezählt werden, die an einem Produktionstag gelaufen sind. • Es soll die Gesamtanzahl ermittelt werden. • Auswahlkriterium ist die Jobstartzeit nach 00.01 Uhr bis 24.00 Uhr (24 Stunden) • Auswertung soll: • täglich erfolgen für Monatsgrafik. • Letzte Summe des Monats für Jahresgrafik
Wie soll die Grafik aussehen? Entwurf für die Tagesgrafik
Ausgangsdaten: Möglichkeit 1 Aus den SMF-Datenin XINFO. Diese enthaltenalle Verarbeitungen. Auch solche, die nicht mit einem Scheduler gesteuert werden.
Ausgangsdaten: Möglichkeit 2 Aus den TWS-Joblaufzeitenin XINFO. Diese enthaltennur Verarbeitungen die mit einem Scheduler gesteuert wurden.
Wie ermittelt man den Wert? • Im XINFO-Dialog austesten. • Die Kommandos GROUP und STAT sind hierbei sehr hilfreich. • Mit dem Kommando SHOW dann die erzeugte SQL anzeigen und mit CUT und PASTE in den Job kopieren. • … oder mit Kommando BATCH kompletten Job erzeugen lassen.
Wie sieht der fertige Job aus? //GET0010 EXEC PGM=XXRIWT1, // PARM='HEAP(1M,256K)/', // REGION=2M //SYSPRINT DD SYSOUT=&SYSOUT //SYSOUT DD SYSOUT=&SYSOUT //CEEDUMP DD SYSOUT=&SYSOUT //PARMIN DD DISP=SHR, // DSN=HORIZONT.TEST(XXRINF01) //WTRESO DD DISP=(,CATLG), // SPACE=(TRK,(10,50),RLSE), // DCB=(RECFM=FB,LRECL=255), // DSN=HORIZONT.WORK01 //SYSIN DD * SELECT COUNT(*) AS COUNT,XXRDATCLIENT,XXRDATENV,XXRDATINFO FROM XINFO31.XXRVSMJ WHERE (SMFJESNAME LIKE 'JOB%') AND (SMFJOBRC < 'CC 0009') AND (DATE(SMFSTARTTS) = '02.02.2005') GROUP BY XXRDATCLIENT, XXRDATENV, XXRDATINFO FOR FETCH ONLY Selektion aus den SMF-Daten Count gibt nur die Anzahl aus
Wie sieht das Ergebnis aus? *************************** Top of Data ******************* DB2 - Output generated with XINFO Date : 05.07.2006 Time : 15:28:11 SQL Command Used for this Output : SELECT COUNT(*) AS COUNT,XXRDATCLIENT,XXRDATENV,XXRDATINFO FROM XINFO31.XXRVSMJ WHERE (SMFJESNAME LIKE 'JOB%') AND (SMFJOBRC < 'CC 0009') AND (DATE(SMFSTARTTS) = '02.02.2005') GROUP BY XXRDATCLIENT, XXRDATENV, XXRDATINFO FOR FETCH ONLY COUNT XXRDATCL XXRDATEN XXRDATIN ---------------------------------------- 1260 HORIZONT PROD ************************** Bottom of Data ***************** Anzahl Jobs aus COUNT Client Felder
Ergebnis aufbereiten zum Laden • Ergebnis ist so nicht ladbar. • Zentrale REXX Routine ITCXASQL ermöglicht ein Aufbereiten. • Eingabefelder können frei definiert werden. • Ausgabefelder entsprechen dem richtigen Format. • Feste Werte können vorgegeben werden. • Auch verwendbar für andere Eingabedaten.
Job Control für ITCXASQL //BUILD01 EXEC PGM=IKJEFT01,COND=(4,LT),PARM=`ITCXASQL‘ //XXRMDAI DD DISP=SHR,DSN=HORIZONT.WORK01 //XXRMPRT DD DUMMY //XXRMDAO DD DISP=(,CATLG),SPACE=(TRK,(10,50),RLSE), // DCB=(RECFM=FB,LRECL=255), // DSN=HORIZONT.RESULT //SYSPROC DD DISP=SHR,DSN=XINFO.CLIST //SYSIN DD * TARGET_COL_1,LENGTH=8 ^ START=15,LENGTH=8 TARGET_COL_2,LENGTH=8 ^ START=24,LENGTH=8 TARGET_COL_3,LENGTH=8 ^ START=33,LENGTH=8 TARGET_COL_4,LENGTH=16 ^ VALUE='BATCHTOT' TARGET_COL_5,LENGTH=3 ^ VALUE='001' TARGET_COL_6,LENGTH=11 ^ VALUE='20050202' TARGET_COL_7,LENGTH=11 ^ START=3,LENGTH=11 /* //SYSTSIN DD DUMMY Ausgabe Felder sind Pflicht.Nicht ändern! Eingabe Felder. Beschreibung wo Werte stehen
Auflösen der Dateninhalte COUNT XXRDATCL XXRDATEN XXRDATIN ---------------------------------------- 1260HORIZONTPROD ----+----1----+----2----+----3----+----4----+----5----+---- Frei wählbarer Name für späteren Verwaltungslauf TARGET_COL_1,LENGTH=8 ^ START=15,LENGTH=8 TARGET_COL_2,LENGTH=8 ^ START=24,LENGTH=8 TARGET_COL_3,LENGTH=8 ^ START=33,LENGTH=8 TARGET_COL_4,LENGTH=16 ^ VALUE='BATCHTOT' TARGET_COL_5,LENGTH=3 ^ VALUE='001' TARGET_COL_6,LENGTH=11 ^ VALUE='20050202' TARGET_COL_7,LENGTH=11 ^ START=3,LENGTH=11 Nummer der Linie auf Grafik Datum des Laufes
Ergebnis von ITCXASQL • Ergebnis entspricht der Struktur für den Verwaltungslauf. • Detaillierte Beschreibung der Funktionen der REXX im Handbuch ************************** Top of Data ************************* HORIZONT PROD BATCHTOT 001 20050202 1260 ************************* Bottom of Data ***********************
Eintrag in der Parameter-Datei Mit der Parameter-Datei wird gesteuert: • die Aufbewahrungsdauer der Datensätze • die Verteilung auf andere Displays • festgelegt ob zeitliche Lücken in den Datensätzen automatisch gefüllt werden. • die Struktur der Daten der X-Achse Achtung! Der Name des Displays muss immer mit ITC… beginnen!
Parameter Datei ************************** Top of Data ************************* HORIZONT PROD BATCHTOT 001 20050202 1260 ************************* Bottom of Data *********************** Anzahl Sätze Aufbewahrung ------------------------------------------------------------------------ -DISPLAY CY COUNT C DATABASE KEY FP DESCRIPTION ITCABEND D 1095 2 ABEND Y,M,D N JOB ABEND OUT OF SM ITCAVLCICS01 D 1095 2 CICSAVAIL Y,M,D N CICS01 TASKS AVAILA ITCAVLLINE73 D 0730 2 AVLLIN73 Y,M,D N AVAILABILITY OF LIN ITCBATCHDAY D 1095 2 BATCHTOT Y,M,D Y DAILY BATCHJOBS ITCBATCHMONTH M 0048 2 BATCHTOT Y,M N Monthly BATCHJOBS ITCBATCHAVL D 1095 2 BATVALID Y,M,D Y DAILY BATCH AVAILAB ITCBATCHHOUR D 1095 2 BATHOURTOT H,S Y DAILY BATCH EACH HO Name des Display/Grafik D = täglich M = monatlich Name aus dem Ermittlungsjob
Anlegen View in DB2 • Da alle Daten in einer Tabelle enthalten sind, muss ein VIEW erstellt und im DB2 eingebunden werden. (Filter/Abfrage) • Hierfür werden DB2-Administratorrechte benötigt. • Definitionen sollten in einer eigenen Datei gespeichert werden, damit bei einem XINFO Releasewechsel nichts überschrieben wird.
Anlegen View im DB2 I/II SET CURRENT SQLID = 'P390M'; CREATE VIEW XINFO31.XXRVMIZ AS SELECT XXRDATCLIENT ,XXRDATENV ,XXRDATINFO ,ITCGRAPHTYPE ,ITCCURVE ,ITCX ,ITCY ,ITCYEAR ,ITCMONTH ,ITCDAY ,ITCQUARTER ,ITCWEEK ,ITCHOUR ,ITCMINUTE ,ITCSECOND FROM XINFO31.XXRTITC WHERE ITCGRAPHTYPE = 'ITCBATCHDAY‘ Display Name dient zur Selektion
Anlegen View im DB2 II/II GRANT SELECT ON TABLE XINFO31.XXRVMIZ TO PUBLIC; LABEL ON TABLE XINFO31.XXRVMIZ IS 'ITC – My new Display (V); LABEL ON XINFO31.XXRVMIZ (XXRDATCLIENT IS 'Client ', XXRDATENV IS 'Environment ', XXRDATINFO IS 'DatAddInfo ', ITCGRAPHTYPE IS 'Graphik ', ITCCURVE IS 'Curve ', ITCX IS 'X ', ITCY IS 'Y ', ITCYEAR IS 'Year ', ITCMONTH IS 'Month ', ITCDAY IS 'Day ', ITCQUARTER IS 'Quarter ', ITCWEEK IS 'Week ', ITCHOUR IS 'Hour ', ITCMINUTE IS 'Minute ', ITCSECOND IS 'Second '); SET CURRENT SQLID = USER; Sprechenden Titel wählen
View in DB2 laden //JOBCARD . . . . . . . . //LIBS JCLLIB ORDER=(P390A.XXR.TST31.PROCLIB) //* HORIZONT (ORIGINAL) JOB NAME: XXRJDBC2 //************************************************************** //* !! ATTENTION: SYSADM RIGHTS ARE NEEDED TO SUBMIT THIS JOB !! //************************************************************** //* CREATE THE TABLES //* REMEMBER TO DROP THE TABLESPACES IF YOU //* RUN THIS JOB FOR THE SECOND TIME //************************************************************** //XXRJDBC2 EXEC XXRJ2TSO //SYSTSIN DD * DSN SYSTEM(DSN1) RUN PROGRAM(DSNTEP2) PLAN(DSNTEP71) + LIBRARY('DSN710.RUNLIB.LOAD') END //SYSIN DD * DROP VIEW XINFO31.XXRVMIZ; COMMIT; // DD DISP=SHR,DSN=MY.ITC.LIBRARY(XXRVMIZ) Ausführung mit DB-Adminrechten
Erstellen Display in XINFO • Um in XINFO Displays erstellen zu können, benötigt man XINFO Administratorrechte. • Mit dem XINFO Table Manager muss zuerst das View ins XINFO eingebunden werden.(Genaue Beschreibung im XINFO Administrator-Handbuch) • Danach muss mit dem Display-Generator das Display erstellt werden. (Genaue Beschreibung im XINFO Administrator-Handbuch) • Mit der Beschreibung des Displays wird die Explorer-Struktur am PC-Client festgelegt.
Übersicht Displays HOST ‘ – ‘ bewirkt eine Unterstufe im Explorer am PC-Client
Übersicht Displays PC-Client 1. StufeIT-Charts 2. Stufe Definitions 3. Stufe Execs
Erstellen Eintrag ITC.INI • ITC.INI beschreibt das Aussehen der Grafik • Jedes Display braucht einen Eintrag in der ITC.INI ansonsten wird eine Meldung angezeigt: • ITC.INI liegt in der Regel auf dem Verzeichnis, wo der XINFO PC Client installiert ist.
Erstellen Eintrag ITC.INI Display Name [ITCBATCHHOST] LABEL=Daily Batch Jobs HOST TITLE=Daily Batch Jobs HOST TYPE=LINE FIELD=YEAR,Year,4,3 FIELD=MONTH,Month,2,3 ORDER=X FORMAT_X=DATE(YYYYMMDD) FORMAT_Y=NUM TITLE_X=Month,ARIAL,14 TITLE_Y=Jobs,ARIAL,14 SCALE_X=MONTH SCALE_Y=1000,100 CURVE=1,Batch Jobs zOS,8,4,5 Titel Beschriftung Achsen Beschriftung Schrittweite der Skalierung Beschreibung der Linie
Anzeigen der Grafik I/III Neues Display erscheint nach erneutem LOGON
Anzeigen der Grafik II/III Für die Monatsgrafik genügt das Jahr und Monat
Anzeigen der Grafik III/III CURVE=1,Batch Jobs zOS,8,3,0 8 = schwarz 3 = Linienstärcke in mm 0 = Linienform
Beispiel 2 Aufgabenstellung Ausgangsdaten Erstellen Abfragejob Aufbereiten der Daten Verwaltungslauf Definitionen im DB2 Definitionen im ITC.INI Anzeigen Grafik
Aufgabenstellung • Für die Überwachung der Service-Level wird eine Grafik benötigt, die die SLA-Zeit und tatsächliche Endezeit einer Verarbeitung zeigt. • Die Verarbeitung läuft täglich. Letzter Job des Ablaufes heißt CRITJOB. • Die aktuelle Endezeit beträgt 09.00 Uhr. Ab dem 15.9.2004 wird die Zeit auf 08.45 Uhr reduziert. • Auswertung soll: • täglich erfolgen für Monatsgrafik
Wie soll die Grafik aussehen? Entwurf für die Tagesgrafik
Ausgangsdaten: Möglichkeit 1 Aus den SMF Datenin XINFO. Hier sind die Endezeiten von allen Jobsenthalten.
Ausgangsdaten: Möglichkeit 2 Aus den TWS Joblaufzeitenin XINFO.
Wie ermittelt man den Wert? • Im XINFO-Dialog austesten. • Die Kommandos GROUP und STAT sind hierbei sehr hilfreich. • Mit dem Kommando SHOW dann die erzeugte SQL anzeigen und mit CUT und PASTE in den Job kopieren. • … oder mit Kommando BATCH kompletten Job erzeugen lassen. • ITC-Handbuch enthält umfangreiche Beispiele.
Wie sieht der fertige Job aus? //GET0010 EXEC PGM=XXRIWT1, // PARM='HEAP(1M,256K)/', // REGION=2M //SYSPRINT DD SYSOUT=&SYSOUT //SYSOUT DD SYSOUT=&SYSOUT //CEEDUMP DD SYSOUT=&SYSOUT //PARMIN DD DISP=SHR, // DSN=HORIZONT.TEST(XXRINF01) //WTRESO DD DISP=(,CATLG), // SPACE=(TRK,(10,50),RLSE), // DCB=(RECFM=FB,LRECL=255), // DSN=HORIZONT.WORK01 //SYSIN DD * SELECT SMFJOBNAME, SMFJOBRC, SMFENDTS, XXRDATCLIENT, XXRDATENV, XXRDATINFO FROM XINFO31.XXRVSMJ WHERE (SMFJOBNAME = 'CRITJOB') AND (DATE(SMFENDTS) = '2004-09-10') FOR FETCH ONLY Selektion aus den SMF Daten Jobname
Wie sieht das Ergebnis aus? DB2 - Output generated with XINFO Date : 06.07.2006 Time : 15:34:09 SQL Command Used for this Output : SELECT SMFJOBNAME, SMFJOBRC, SMFENDTS, XXRDATCLIENT, XXRDATENV, XXRDATINFO FROM XINFO31.XXRVSMJ WHERE (SMFJOBNAME = 'CRITJOB') AND (DATE(SMFENDTS) = '2004-09-10') FOR FETCH ONLY SMFJOBNA SMFJOBR SMFENDTS XXRDATCL XXRDATEN XXRDAT -------------------------------------------------------------------- CRITJOB 2004-09-10-08.57.15.000000 HORIZONT PROD Client Felder Endezeit Jobname
Ergebnis aufbereiten zum Laden • Ergebnis ist so nicht ladbar. • Zentrale REXX Routine ITCXASQL ermöglicht ein Aufbereiten. • Eingabefelder können frei definiert werden. • Ausgabefelder entsprechen dem richtigen Format. • Feste Werte können vorgegeben werden. • Auch verwendbar für andere Eingabedaten.
Job Control für ITCXASQL //BUILD01 EXEC PGM=IKJEFT01,COND=(4,LT),PARM=`ITCXASQL‘ //XXRMDAI DD DISP=SHR,DSN=HORIZONT.WORK01 //XXRMPRT DD DUMMY //XXRMDAO DD DISP=(,CATLG),SPACE=(TRK,(10,50),RLSE), // DCB=(RECFM=FB,LRECL=255), // DSN=HORIZONT.RESULT //SYSPROC DD DISP=SHR,DSN=XINFO.CLIST //SYSIN DD * TARGET_COL_1,LENGTH=8 ^ START=47,LENGTH=8 TARGET_COL_2,LENGTH=8 ^ START=56,LENGTH=8 TARGET_COL_3,LENGTH=8 ^ START=65,LENGTH=8 TARGET_COL_4,LENGTH=16 ^ START=3,LENGTH=8 TARGET_COL_5,LENGTH=3 ^ VALUE='001' TARGET_COL_6,LENGTH=11 ^ START=20,LENGTH=4 TARGET_COL_6,LENGTH=11 ^ START=25,LENGTH=2 TARGET_COL_6,LENGTH=11 ^ START=28,LENGTH=2 TARGET_COL_7,LENGTH=5 ^ START=31,LENGTH=2 TARGET_COL_7,LENGTH=5 ^ START=34,LENGTH=2 DOUBLE_COL_5,LENGTH=3 ^ VALUE='002' DOUBLE_COL_7,LENGTH=5 ^ VALUE='0900' Double schreibt weiteren Satz mit anderen Werten Linie 1 enthält die Endezeit Linie 2 enthält die SLA Zeit
Auflösen der Dateninhalte SMFJOBNA SMFJOBR SMFENDTS XXRDATCL XXRDATE -------------------------------------------------------------- CRITJOB2004-09-10-08.57.15.000000 HORIZONTPROD ----+----1----+----2----+----3----+----4----+----5----+----6-- TARGET_COL_1,LENGTH=8 ^ START=45,LENGTH=8 TARGET_COL_2,LENGTH=8 ^ START=54,LENGTH=8 TARGET_COL_3,LENGTH=8 ^ START=63,LENGTH=8 TARGET_COL_4,LENGTH=16 ^ START=1,LENGTH=8 TARGET_COL_5,LENGTH=3 ^ VALUE='001' TARGET_COL_6,LENGTH=11 ^ START=18,LENGTH=4 TARGET_COL_6,LENGTH=11 ^ START=23,LENGTH=2 TARGET_COL_6,LENGTH=11 ^ START=26,LENGTH=2 TARGET_COL_7,LENGTH=5 ^ START=29,LENGTH=2 TARGET_COL_7,LENGTH=5 ^ START=32,LENGTH=2 DOUBLE_COL_5,LENGTH=3 ^ VALUE='002' DOUBLE_COL_7,LENGTH=5 ^ VALUE='0900' Nummer der Linie auf Grafik SLA Zeit