Table of Contents
ZENworks Application Reporting
Inleiding
Binnen ZENworks kun je bijhouden in hoeverre je applicaties nou worden gebruikt. Deze functie, genaamd Application Reporting, kenmerkt zich door een grote flexibiliteit en een hoge graad van simpelheid. Dit document gaat in hoe je op simpele wijze Application Reporting op een database kan zetten en deze database gaat vullen door de applicatie objecten zelf te bewerken. Dit geschiedt door een stappenplan bestaande uit in totaal 8 stappen:
- Maak een nieuw database object.
- Maak een service location package.
- Zet de database policy aan.
- Associeer de database policy met het database object.
- Controleer of gebruikers de juiste ODBC drivers geïnstalleerd hebben.
- Configureer de bij te houden objecten op de juiste rapportage.
- De database en de service starten en stoppen.
- Bekijk de database inhoud en maak een rapport.
Dit document is gebaseerd op ZENworks for Desktops 4.01 en Netware 6, maar is waarschijnlijk ook toe te passen op ZENworks for Desktops 6.5 en 7 en Netware 5.1 en 6.5.
Bron: Novell Documentatie
Maak een nieuw database object
Allereerst moet je de database software installeren en draaien op een server. De installatie van deze software kun je meenemen tijdens de installatie van ZENworks door het Workstation Inventory Component te selecteren. Je kan tijdens de installatie al gelijk de database configureren maar dit kun je ook handmatig na afloop doen. De database software die standaard wordt geïnstalleerd is van Sybase, en de rest van dit document zal dit ook als standaard aanhouden. De database die standaard wordt aangemaakt voor application reporting heet <servernaam>_nalDatabase. Behalve Sybase kun je zelf elke ODBC-compatible database installeren en configureren. Je kunt de workstation inventory en de Application Reporting op dezelfde server en op dezelfde software draaien. Ze maken dan allebei hun eigen database bestanden aan (workstation inventory maakt mgmtdb.db aan en application reporting maakt nal.db aan). Mocht het maken van de database mis zijn gegaan of je hebt ervoor gekozen om het handmatig te doen kan dit ook. Je kan dit doen op de volgende wijze, waarbij er vanuit wordt gegaan dat je gebruik maakt van een Sybase database:
- In consoleone ga je naar de container waar je de database wilt maken, klik op nieuw object en selecteer de ZENworks database. Je krijgt nu een nieuw scherm waar je de naam opgeeft van je database. Vink Define Additional Properties aan en klik op OK.
- De database object eigenschappen zien er als volgt uit:
# Je geeft hier de volgende instellingen op:
- # Server DN: Selecteer hier het server object waar de database fysiek staat geïnstalleerd en draait.
- Het IP adres hoef je alleen te veranderen als je nog op Netware 4 draait, of als je DNS niet goed is geconfigureerd. De DNS naam wordt automatisch ingevuld.
- Db Read-Write username: MW_DBA
- Db Read-Write password: novell
- Db Read-Only username: MW_READER
- Db Read-Only password: novell
- Db Write-Only username: MW_UPDATER
- Db Write-Only password: novell
- Hier moet je de volgende gegevens invullen:
- Driver file name: dbodbc7.dll maar je kan hem ook leeg laten zodat de NAL zelf de goede driver selecteert.
- Data Source Name: NAL Reporting
- CommLinks=TCPIP{Host=IPAddress:2638};AutoStop=Yes;Integrated=No;DBN=NAL;ENG=IPAddress (vervang beide IP Addressen voor het IP adres van de server waar de database op draait)
- In het tabblad NDS Rights moet je dan nog PUBLIC read en compare rechten geven op een aantal ODBC properties:
- Nadat je public hebt toegevoegd als trustee moet je eerst het “All attribute Rights” properties recht verwijderen.
- Vervolgens kun je de volgende properties toevoegen:
- zendbODBCConnectionParameters
- zendbODBCDataSouceName
- zendbODBCDriverFileName
- Host Server
- Network Address
- zendbUser
- zendbPassword
Bron installatie sybase: http://www.novell.com/documentation/zdpr/index.html?page=/documentation/zdpr/zdprinst/data/ae8cl5p.html#ae8cl5p
Maak een Service Location Package
Mocht je nog geen service location package hebben kun je deze aanmaken met consoleone. Ga hiervoor naar de container waar deze moet komen en klik op nieuw object, en selecteer Policy Package. Selecteer de service location package en geef de naam en verder informatie op die wordt gevraagd door de Policy Package Wizard. Heb je al een service location package waarin je nog geen database policy hebt kun je deze gewoon gebruiken, wat deze stap niet strikt noodzakelijk maakt.
Zet de database policy aan
In de properties van het service location package kun je de ZENworks database policy aanzetten. Vervolgend klik je op properties, om in het tabblad Application Management het juiste database object te selecteren. Dit is het <servernaam>_nalDatabase object, indien je hem automatisch hebt laten maken of het object wat je handmatig hebt geconfigureerd met de juiste server en ODBC gegevens.
Associeer de database policy met het database object
Ga naar het tabblad associations om daar de juiste container te selecteren. Bedenk goed welke container je precies moet gaan associëren. Je moet een of meerdere containers selecteren waarbij je de applicatie, de gebruiker en het werkstation selecteert. Tijdens het initieel opzetten van Application Reporting kun je het beste de Organization selecteren. Je weet dan zeker dat je alle benodigde containers hebt geassocieerd. Blijkt na afloop dat je te veel bijhoudt kun je altijd nog alleen de child containers selecteren. Het is dus ook gewoon mogelijk om verschillende containers te selecteren.
Controleer of gebruikers de juiste ODBC drivers geïnstalleerd hebben
Als je gebruik maakt van de Sybase database hoef je niets te doen. De ODBC driver hiervoor is automatisch geïnstalleerd. Op Windows 98 moet je nog wel drivers toevoegen, en deze kun je vinden op de ZENworks for Desktops CD (odbccp32.dll and odbcint.dll).
Configureer de bij te houden objecten op de juiste rapportage
Je kunt nu een object waarvan je rapportage wilt hiervoor gaan configureren. Selecteer hiervoor het desbetreffende applicatie object en ga naar de eigenschappen, en vervolgens het tabblad Common / Reporting. Dit ziet er als volgt uit: Je kunt hier selecteren wat je wilt gaan bijhouden en op welke manier. Aangezien we zojuist een database hebben geconfigureerd vink je per event alleen het vinkje onder het database symbool aan. Dit is de eerste kolom. Zodra je dit hebt aangezet zal het applicatie object de geselecteerde events naar de database gaan sturen nadat het werkstation opnieuw is opgestart. Over het algemeen is het voldoende om van de events alleen de “Launch succes”, “Launch Failure” en de “Process Termination” te selecteren.
De database en de service starten en stoppen
De database en de service kunnen gestart worden met de volgende twee commando's: mgmtdbs.ncf:
load VAR:\ZENworks\Inv\DBEngine\dbsrv7 -gn 50 -c 32M -tl 300 -ti 0 -m -n 10.9.97.33 -x tcpip VAR:\ZENworks\Inv\DB\mgmtdb.db VAR:\ZENworks\NAL\DB\nal.db
startinv.ncf:
search add sys:\java\njclv2\bin InvEnv ZWSStart java -envDISPLAY=127.0.0.1:0 -sn"ZENworks Inventory Service" -noclassgc -DConfigFile=$inv_dir\properties\Config.properties -DDirectoryProp=$inv_dir\properties\Directory.properties -nsac -jszenWSInv -autounload -Xmx128m -classpath $tmppath;$classpath com.novell.zenworks.desktop.inventory.servercommon.ZENWorksInventoryServiceManager
Er zijn situaties waarbij je ook nog een extra search pad moet toevoegen op de server. Dit doe je met het commando
- search add sys:java\nwgfx\bin
De database kan gestopt worden door een “q” in te tikken op het Sybase server console en het stoppen te bevestigen. De ZEN Web Server en de ZENworks Inventory Service kunnen gestopt worden door op het server console het commando
- java -show
op te geven, en vervolgens het commando
- java -kill'id'
waarbij je 'id' vervangt met het juiste nummer wat je hebt gevonden met het show commando. Het stoppen en starten van de database en de services is noodzakelijk indien de associatie is veranderd. Bij het aanpassen van een applicatie hoeft alleen de NAL te worden ververst, dit moet uiteraard ook gebeuren bij het veranderen van de associatie.
Bekijk de database inhoud en maak een rapport
Binnen ZENworks 4 zitten geen vooraf gedefinieerde rapportages. Wel is er een testtool beschikbaar genaamd sybase probe die te downloaden is vanaf onderstaande link. Met deze tool kun je queries loslaten op je database om te controleren wat er in de database staat. Om een verbinding te maken met de database moet je het dbconnect.bat bestand aanpassen aan je omgeving:
dbisqlc -c "uid=MW_DBA;pwd=novell;dbn=<DBNAAM>;ENG=<IPADRES>;commLinks=tcpip{HOST=<IPADRES>}"
De aanpassingen die je moet maken bestaan uit de database naam en het IP-adres.
Sybaseprobe: http://support.novell.com/cgi-bin/search/searchtid.cgi?2967126.htm
In deze tool kun je onder andere de onderstaande queries gebruiken:
select * from t_success select zenwstdn,zenwsaddr,zenapptdn,zeneventtype,zendatetime,zenusertdn from t_success order by zenwsaddr select distinct zenwsaddr from t_success (unieke gegevens) select * from t_success where zenwsaddr='10.10.10.10' select * from t_success where zenusertdn like '%sjohoo%' select * from t_success where zenapptdn like '%console1%' select * from t_success where zendatetime like '%6-%6-2006%'
Zoals je kan zien heeft deze tool dus nogal zijn beperkingen. Het voordeel is wel dat hij zeer snel is. Voor het laden van 5500 regels heeft hij nog geen anderhalve seconde nodig. De tool heeft echter geen export mogelijkheden, dus je kan er geen echte rapportage mee maken. Indien je dit wel wilt kun je daar MS Access voor gebruiken. Deze heeft als eis dat je een ODBC driver hebt om verbinding te kunnen maken met de database. Deze wordt niet standaad meegeleverd met Windows. In de Companion CD van ZENworks zit een file genaamd “sybaseodbc.zip” waarin een registry file zit die alles goed zet voor je. Hierna moet je de ODBC settings nog wel aanpassen want de standaard heeft uiteraard nog niet de juiste IP-adressen. De instellingen zouden er zo uit moeten zien:
Nu kun je in Access de database benaderen en rapportages gaan maken. Mocht je er niet uitkomen, in de zelfde directory waar het zip bestand staat kun je ook extra informatie vinden over de installatie en de configuratie.
Verdere informatie
Grootte van de database
De grootte van de database is bij meer dan 1000 rijen aan gegevens nog geen 2 MB groot. De grootte van de database is bij meer dan 5500 rijen aan gegevens iets meer dan 3 MB groot. de grootte van de database is bij meer dan 64000 rijen aan gegevens iets minder dan 20 MB groot.
Database performance
Indien je last hebt van performance kun je de aanwijzingen uit onderstaande bron volgen. Deze hebben betrekking tot de hoeveelheid geheugen die de database mag innemen. Het komt erop neer dat je bij het opstarten de standaard waarde van 32 MB vervangt met 128 MB. Dat zou voldoende moeten zijn. Bron: http://www.novell.com/coolsolutions/qna/5125.html
Performance issue
Op het server console kun je de volgende melding krijgen: Performance warning: no unique index or primary key for table “Tabel naam” Deze melding is volgens de Novell Knowledgebase cosmetisch. Bron: http://support.novell.com/cgi-bin/search/searchtid.cgi?10056423.htm
Database legen
De database is te legen door de database en de service te stoppen en de database bestanden te vervangen met de originele vanaf het installatie medium. Bron: http://www.novell.com/coolsolutions/qna/5171.html