artikelen

Wessel Dankers wsl at logreport.org
Sun Feb 10 15:51:40 CET 2002


I've been proofreading the Dutch translation of two LinuxFocus articles. I
probably didn't catch all errors (there were quite a few), so perhaps some
of the other Dutch speaking inhabitants of this mailing list would like to
have a look at it.

Regards,

--
Wessel Dankers <wsl at logreport.org>

It's not RFC-822 compliant.
-------------- next part --------------
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head></head>

  <body>

    <h1>Het analyseren van de logbestanden van je internetapplicaties</h1>

    <h4>ArticleCategory:</h4>
    Applications 

    <h4>AuthorImage:</h4>
    <img src="../../common/images/EgonWillighagen.jpg" width="79" height="102" alt="[EgonWillighagen]"> 

    <h4>TranslationInfo:</h4>

    <p>original in en <a href="mailto:egonw at logreport.org">Logreport,
    Egon Willighagen</a></p>
    en to nl <a href="mailto:hjh at passys.nl">Hendrik-Jan Heins</a></p>

    <h4>AboutTheAuthor:</h4>
    Naast zijn werk voor het LinuxFocus-project werkt Egon ook voor de
    Logreport Foundation, die de Lire-software ontwikkelt.

    <h4>Abstract:</h4>
    <p>Dit artikel is de eerste in een serie over het gebruik van Lire om
    logbestanden van internet-serverapplicaties te analyseren. Deze analyse
    is niet gelimiteerd tot een toepassing, bijvoorbeeld Apache: Lire is een
    ge&iuml;ntegreerd stuk analysegereedschap voor veel verschillende services. DNS, WWW
    en e-mail worden ondersteund. Dit artikel legt uit hoe je aan de slag kunt met
    Lire. Het gaat over de installatie en de configuratie om rapporten te genereren.</p>

    <h4>ArticleIllustration:</h4>
    <img src="../../common/images/illustration213.png" width="300" height="65" alt="[illustration]">

    <h4>ArticleBody:</h4>

    <h2>Inleiding</h2>

    <p>De meeste internetservers kunnen hun activiteiten loggen.
    Bijvoorbeeld de Apache webserver die voor iedere opgevraagde webpagina
	 een regel met informatie wegschrijft nar een logbestand. Afhankelijk
    van de logopmaak bevat de regel informatie, zoals bijvoorbeeld welke
    pagina werd opgevraagd, de opmaak van de pagina, welke browser er gebruikt
    werd en nog veel meer. In het geval van je e-mail server wordt er een
    soortgelijk logbestand aangemaakt. Dit bevat het e-mailadres waar de
    e-mail vandaan komt, wie het ontvangen heeft, hoe groot het was, enz.
    Alle internet services hebben een dergelijke mogelijkheid.</p>

    <p>Deze logbestanden bevatten zeer veel informatie, maar de opmaak
    is lastig uit de losse pols te interpreteren. Je hebt gereedschap
    nodig dat samenvattingen van de gegevens maakt om je te helpen bij het
    analyseren van de inhoud. In het geval van webservers vertaalt zich
    dit in TopX lijsten voor webbrowsers, domeinen en platforms, en een
    bezocht-versus-tijdsplot. De meeste <i>tellers</i> van andere producten
    laten dit soort overzichten zien.</p>

    <p>Er bestaan voor de meeste typen logbestanden gereedschap om
    de inhoud te analyseren. <a href="http://logreport.org/">Lire</a>
    is zulk gereedschap. Maar Lire is anders dan de meeste gereedschappen.
    Lire is een ge&iuml;ntegreerd systeem dat niet slechts &egrave;&egrave;n type
	 internetdienst kan analyseren, maar vele. En de rapporten die de interessante
    gegevens uit de logbestanden samenvatten zitten erbij. Je kunt zelf op
    maat gemaakte rapporttypen aan toevoegen.</p>

    <p>Lire kan op verschillende manieren gebruikt worden. Je kunt het draaien
    vanaf de commandoregel of je kunt een crontabtaak ge&iuml;nstalleerd hebben
    die je rapporten per e-mail opstuurt. In het eerste geval kun je de
    uitvoeropmaak voor het rapport kiezen. De op dit moment beschikbare
    uitvoeropmaak is onder andere platte tekst, HTML, DocBook, PDF en
    LogML. In het geval van de crontabtaak is de enige beschikbare opmaak op
    dit moment platte tekst.</p>

    <p>Nu kunnen de logbestanden voor deze diensten worden geanalyseerd:</p>

    <ul>
      <li>
        <b>www</b>
        <ul>
          <li><a href="http://www.apache.org/">Apache</a></li>
          <li><a href="http://www.boa.org/">Boa</a></li>
        </ul>
      </li>

      <li>
        <b>email</b>
        <ul>
          <li><a href="http://www.exim.org/">Exim</a></li>
          <li><a href="http://www.postfix.org/">Postfix</a></li>
          <li><a href="http://www.sendmail.org/">Sendmail</a></li>
          <li><a href="http://www.qmail.org/top.html">Qmail</a></li>
        </ul>
      </li>

      <li>
        <b>dns</b>
        <ul>
          <li><a href="http://www.isc.org/products/BIND/">Bind8/9</a></li>
        </ul>
      </li>
    </ul>

    <p>Lire wordt snel ontwikkeld, op dit moment (september 2001) met drie mensen die er
    betaald aan werken. Een van hun taken is ondersteuning, dus als je een
    speciaal verzoek hebt (een nieuwe service bijvoorbeeld) of je een
    algemene ondersteuningsvraag hebt, laat dan een bericht achter op
    de mailinglist <a href="mailto:questions at logreport.org">questions at logreport.org</a>.</p>

    <h2>Installatie</h2>
    <p>Recente versies van lire kunnen worden gedownload vanaf
    de <a href="http://sourceforge.net/project/showfiles.php?group_id=5049">SourceForge
    website</a>. Er zijn tar.gz, RPM- en Debianpakketten beschikbaar.
    <a href="http://packages.debian.org/testing/admin/lire.html">Debian
    Woody</a> en ook <a href="http://packages.debian.org/unstable/admin/lire.html">Sid</a>
    bevatten lire al. Installatie van het binaire pakket gaat op de gebruikelijke wijze.
    Installatie van het tar.gz pakket werkt ook precies zoals verwacht:
<pre class="programlisting">./configure
make
make install</pre>

    <p>Het configuratieprogramma heeft de volgende opties</p>

    <table>
      <tbody><tr>
        <td align="center"><b>option</b></td>

        <td align="center"><b>description</b></td>
      </tr>

      <tr>
        <td>--prefix=/some/dir</td>

        <td>Stelt de root dir in voor de installatie. Standaard is
        <i>/usr/local</i>.</td>
      </tr>

      <tr>
        <td>--with-perl5libdir=/some/dir</td>

        <td>Stelt de dir waar de lire Perl modules worden geinstalleerd in.
        De standaard is <i>$prefix/share/perl5</i>.</td>
      </tr>

      <tr>
        <td>--with-sgmldir=/some/dir</td>

        <td>Het pad voor de SGML installatie directory. De standaard is
        <i>$prefix/lib/sgml</i> en <i>$prefix/share/sgml</i>.</td>
      </tr>
    </tbody></table>

    <p>Als je van plan bent om gebruik te maken van andere uitvoeropmaak
    dan platte tekst moet je XML-gereedschap zoals de DocBook XML
    stijlbladen, Jade en een XML-processor zoals Xalan of Sablotron
    ge&iuml;nstalleerd hebben. Met de derde optie voor het configuratieprogramma
	 kun je aangeven waar de SGML-bestanden ge&iuml;nstalleerd zijn.</p>

    <h2>Lire als een crontaak</h2>
    <p>Zodra Lire ge&iuml;nstalleerd is, kun je het losse programma <i>lr_log2report</i>.
    gebruiken. Maar als je van plan bent om Lire te gebruiken via een crontaak,
    dan moet je die crontaak eerst configureren. Dit kan worden gedaan met het
    <i>lr_config</i> programma. De vragen worden een voor een gesteld:</p>

    <p><b>Wordt dit script gestart als deze gebruiker?</b></p>

    <p>Het script moet worden gedraaid door een gebruiker die de logbestanden
    kan lezen. De logbestanden zijn vaak alleen maar leesbaar voor <i>root</i>
    en de gebruikers van de groep <i>adm</i>. Controleer of de gebruiker de
    logbestanden kan lezen. Een voorbeeld:</p>
<pre class="programlisting">~&gt; cd /var/log
/var/log&gt; ls -al apache/access.combined.log
-rw-r----- 1 root root 70902 Jul 27 13:23 apache/access.combined.log
/var/log&gt; whoami
egonw
/var/log&gt; groups
egonw adm dialout</pre>

    <p>In dit voorbeeld kan de huidige gebruiker <i>egonw</i> het Apache
    logbestand niet lezen. Alleen root kan op dit moment het bestand lezen.
    De gebruiker is echter lid van de groep <i>adm</i> dus we kunnen dit
    probleem oplossen door root de groep voor het logbestand te laten
    wijzigen:</p>
<pre class="programlisting">/var/log# whoami
root
/var/log# chgrp adm apache/access.combined.log
/var/log# ls -al apache/access.combined.log
-rw-r----- 1 root adm 70902 Jul 27 13:23 apache/access.combined.log</pre>

    <p><b>Tijdelijke bestanden worden standaard niet bewaard. Wil je deze
    behouden?</b></p>

    <p>Voor normaal gebruik zou je hier nee moeten zeggen.</p>

    <p><b>Ben je van plan een online responder te draaien?</b></p>

    <p>De online responder is een stukje gereedschap dat het mogelijk maakt om
    je logbestand als e-mail naar deze responder te sturen en om dan daarvan een
    rapport terug te krijgen. Dit is bruikbaar voor beheerders van grote
    netwerken. Voor normaal gebruik moet je hier nee kiezen.</p>

    <p><b>Standaard worden tijdelijke bestanden in ~/tmp opgeslagen. Wil je
    dit veranderen?</b></p>

    <p>Standaard worden tijdlijke bestanden opgeslagen in je thuismap.
    Je kunt deze instellingen veranderen door ja te kiezen en de map op
    te geven waar je ze dan wel heen wilt schrijven. Onthoud hierbij wel dat
    dit een map moet zijn waarin de gebruiker die Lire draait schrijfrechten
    heeft.</p>

    <p><b>Wil je een "disclaimer" versturen bij de gegenereerde rapporten?
    </b></p>

    <p>Als je je rapporten naar anderen stuurt, dan zou je misschien een "disclaimer"
    willen toevoegen en moet je dus ja antwoorden op deze vraag. Als de rapporten
    alleen voor intern gebruik zijn, dan kun je hier nee antwoorden.</p>

    <p><b>Standaard worden status en foutmeldingen naar stderr gestuurd. Wil je
    dit veranderen in syslog?</b></p>

    <p>Door hier ja te antwoorden kies je ervoor dat foutmeldingen en informatieve
    meldingen naar logger(1) worden gestuurd in plaats van naar het standaard foutmeldingskanaal
    (STDERR). Hiervoor moet je wel syslog's logger(1) ge&iuml;nstalleerd hebben.</p>

    <p><b>Standaard worden informatieve en debugberichten onderdrukt. Wil je
    het systeem in debugmodus draaien?</b> Voor normaal gebruik moet je hier
    nee kiezen.</p>

    <p><b>Wil je enkele standaardinstellingen voor alle services gebruiken?</b></p>

    <p>Je kunt voor alle services een e-mail adres en een onderwerp apart instellen.
    Voor het gemak kun je ook een standaard globale instelling gebruiken. Antwoord
    hier ja om deze standaard in te stellen:
    </p>

    <p><b>Wil je een "standaard-naar" e-mail adres gebruiken?</b></p>

    <p>Als je hier ja antwoordt, wordt dit e-mail adres gebruikt om
    rapporten naartoe te sturen. Het kan voor specifieke services
    overschreven worden.</p>

    <p><b>Wil je een standaard onderwerpsjabloon gebruiken voor de
    gegenereerde e-mail?</b></p>

    <p>Als je hier ja antwoordt, kun je een sjabloon opgeven dat gebruikt wordt
    om e-mailonderwerpen aan te geven. De standaard ziet er als volgt uit:
    "[LogReport] www / apache report" voor rapporten van Apache logbestanden.</p>

    <p><b>Welke services draai je?</b></p>

    <p>Alle volgende vragen gaan over welke services je van wilt dat Lire een
    rapport van maakt. De vragen lijken op elkaar en worden hier dus ook niet
    een voor een besproken. Maar voor alle services zien de vragen er als volgt
    uit:
    </p>

    <p><b>Verzamel je ***** logbestanden op deze machine die je verwerkt wilt
    hebben?</b></p>

    <p>De programma's die Lire ondersteunt worden gegroepeerd als
    zogenaamde "superservices". De eerste vraag voor iedere superservice
    is altijd of je logbestanden verzamelt waarvan je wilt dat Lire er een
    rapport van maakt. Als je hier nee antwoordt, dan worden de verdere vragen
    over deze superservice niet gesteld. De superservices die Lire op dit
    moment ondersteunt zijn gegeven aan het begin van dit artikel. Er is er
    echter een die daar niet genoemd is: apachemodgzip. Dez werkt met logbestanden
    over Apache in gecomprimeerde modus.</p>

    <p>Het configuratieprogramma zal je daarna vragen stellen over welke services
    een voor een gedraaid worden. Voor e-mail bijvoorbeeld zouden deze services
    exim, postfix, qmail en sendmail kunnen zijn. Voor ieder programma vraagt
    lr_config je waar Lire de logbestanden kan vinden. Deze kunnen ingepakt zijn,
    omdat Lire je zal vragen of je wil specificeren met behulp van welke programma's
    het de logbestanden moet lezen: <i>zcat</i> of <i>gunzip -c</i> kunnen op deze manier
    gebruikt worden.</p>

    <p><b>Worden enige van je ***** logbestanden wekelijks gerouleerd?</b></p>

    <p>Als je ja antwoordt, zullen de crontabtaken voor Lire worden geconfigureerd
    om maar eens per week te draaien. De andere optie is dagelijks.</p>

    <p>Als alle vragen beantwoord zijn, schrijft hij alle instellingen naar
    configuratiebestanden (*/defaults.local). Deze bestanden kunnen worden
    gebruikt door de Lire crontaak. Helaas wordt deze crontaak niet automatisch
    geactiveerd. Je moet dit zelf doen door de volgende "one-liner" in te typen:</p>
<pre class="programlisting">~&gt; { echo '0 10 * * * /usr/local/logreport/bin/lr_cron daily';
     echo '0 10 * * 0 /usr/local/logreport/bin/lr_cron weekly'; } | crontab -</pre>

    <p>Zodra lire op dee manier gectiveerd is, zullen de rapporten op een wekelijkse
    of dagelijkse basis worden verstuurd. Je kan de configuratie afstellen door
    de de hierboven genoemde configuratiebestanden te bewerken.</p>

    <h2>Lire als "stand-alone" gereedschap</h2>
    Lire kan ook worden gebruikt als "stand-alone" gereedschap en heeft als
    voordeel dat je andere een uitvoeropmaak kunt kiezen, en de mogelijkheid hebt
    om plaatjes mee te sturen. Het "stand-alone" gereedschap <i>lr_log2report</i>
    wordt gedraaid door een tweede Lire-programma, <i>lr_run</i>:
<pre class="programlisting">~&gt; lr_run lr_log2report /tmp/err www apache combined &lt;
   /var/log/apache/access.combined.log &gt; apache.txt</pre>

    <p>Het <i>lr_log2report</i> programma gebruikt tenminste drie argumenten.
    Het eerste is een bestnd waar de foutmeldingen naartoe worden gestuurd. In dit
    geval <i>/tmp/err</i>. Het tweede argument is de <i>superservice</i> van
    het logbestand. Er zijn op dit moment drie superservices: www, dns en
    e-mail. Het derde argument is de <i>service</i>, dat het type logbestand
    typeert. In dit gevl is dat een Apache gecombineerd bestand, dus de service
    is apache. Er bestaat een extra argument dat een vlagfunctie heeft en die
    vertelt dat het apache logbestand gebruik maakt van de gecombineerde opmaak.
    Zoals met de meeste Lire-programma's kun je extra informatie vinden met
    behulp van <i>man</i>:</p>
<pre class="programlisting">~&gt; man lr_log2report</pre>

    <p>Om de uitvoeropmaak te veranderen kan je de optie "-i &lt;opmaak&gt;"
    gebruiken. Geldige opmaak is op dit moment txt (standaard), logml
    (<a href="http://www.cs.rpi.edu/%7Epuninj/LOGML/">LogML website</a>), DocBook
    XML (<a href="http://sourceforge.net/projects/docbook">DocBook Open
    Repository</a>), HTML en PDF. De laatste twee hebben <a href="http://sourceforge.net/projects/docbook">DocBook stylesheets</a>
    en <a href="http://openjade.sourceforge.net/">Jade</a> nodig om te werken.
    Alle opmaakmogelijkheden behalve platte tekst hebben ook een XSLT-processor zoals
    Gnome's <a href="http://xmlsoft.org/XSLT/">xsltproc</a> nodig om bijvoorbeeld
    PDF te genereren:</p>
<pre class="programlisting">~&gt; lr_run lr_log2report -o pdf /tmp/err www apache combined
   &lt; /var/log/apache/access.combined.log &gt; apache.pdf</pre>

    <h2>Conclusie</h2>

    <p>Dit artikel heeft in het kort het Lire project voorgesteld en je laten
    zien hoe je de software kunt installeren en configureren. De volgende artikelen
    in deze serie zullen de software en het gebruik verder omschrijven. Voor nu
    kun je meer informatie hierover vinden op onze website:
    <a href="http://www.logreport.org/">http://www.logreport.org/</a>.</p>

    <p>Als je contact met ons wilt opnemen, kun je ons het beste ontmoeten
    op IRC. De ontwikkelaars kunnen vaak gevonden worden op het #logreport
    kanaal op het <a href="http://www.openprojects.org/">OpenProjects.org IRC
    netwerk</a>. Vragen, opmerkingen en ondersteuningsvragen zijn welkom.</p>
  </body></html>
-------------- next part --------------
<html><head>
<!-- lfparser will add this: -->
<style type="text/css">
 p.code { width:80%; alignment:center; background-color:#aedbe8; border-style:none; border-width:medium; border-color:#aedbe8; padding:0.1cm ;  text-align:left }
</style>
</head><body>
<h1>Het analyseren van de logbestanden van je internetapplicaties II -
het configureren van je rapporten</h1>

<h4>ArticleCategory:</h4>
Applications

<h4>AuthorImage:</h4>
<img src="../../common/images/EgonWillighagen.jpg" alt="Foto van Egon" width="79" height="102">

<h4>TranslationInfo:</h4>
<p>original in en <a href="mailto:egonw at logreport.org">Egon Willighagen</a></p>
<p>en to nl <a href="mailto:hjh at passys.nl">Hendrik-Jan Heins</a></p>

<h4>AboutTheAuthor:</h4>
<p>Naast zijn werk voor het LinuxFocus-project, werkte Egon voor de Stichting
Logreport tot de eerste november van dit jaar. Een deel van het doel van de
stichting was het schrijven van software voor loganalyse met een GPL-licentie.</p>

<h4>Abstract:</h4>
<p>Dit artikel is het tweede in een serie over het gebruik van Lire om logbestanden
van internet-serverapplicaties te analyseren. Dit artikel laat je zien hoe je de
gegenereerde rapporten kunt aanpassen aan je eigen voorkeuren. Het
<a href="http://www.nl.linuxfocus.org/English/September2001/article213.shtml">
eerste artikel</a> uit deze serie legt uit hoe Lire moet worden ge&iuml;nstalleerd.</p>

<h4>ArticleIllustration:</h4>
<img src="../../common/images/illustration213.png" width="300" height="65" alt="[illustration]">

<h4>ArticleBody:</h4>

<h2>Inleiding</h2>

<p>Dit artikel is gebaseerd op de laatste release van Lire, op dit moment is dat
<a href="http://www.logreport.org/">lire-20011017</a>.
Let erop dat de configuratie erg veranderd is sinds de vorige uitgave en dat in
feite het eerste artikel uit de serie nu al verouderd is. Het idee van lr_config
is echter niet veranderd.
</p>

<p>Nieuwe features in deze release zijn, onder andere: twee nieuwe superservices
(FTP en firewall), veel nieuwe rapporten (totaal &gt; 68), nieuwe opmaakmethoden voor uitvoer
(XHTML en RTF) en een heleboel bugfixes. Maar de belangrijkste verandering in deze
uitgave zit onder de motorkap. Het rapport-generatieproces is compleet herschreven
om gebruik te kunnen maken van XML technologie.</p>

<p>Dit artikel zal een van de XML-opmaakmethoden die nu in lire gebruikt worden introduceren en
hoe deze gebruikt kunnen worden om rapporten te specificeren. Het zal geen handboek zijn
over het maken van nieuwe rapporten maar het zal je laten zien hoe je de voorgedefini&euml;erde
rapporten kunt veranderen op een laag niveau. Maar allereerst zal dit artikel uitleggen
hoe je Lire kunt vertellen welke rapporten hij moet genereren en hoe de parameters voor
deze rapporten moeten worden ingesteld.</p>

<h2>Rapporten selecteren</h2>

<p>Iedere <i>superservice</i> (dus `email' is een <i>superservice</i>,
de `postfix' en `sendmail' <i>services</i> behoren tot deze <i>super service</i>)
heeft een aantal rapporten beschikbaar die extra informatie voor je uit de logs
halen. De www superservice heeft bijvoorbeeld 31 rapporten. Niet alle rapporten
zijn interresant voor iedereen. Sommige zijn erg specifiek. Standaard worden de
meeste van deze rapporten geselecteerd, maar het is handig om dit in te stellen
naar je eigen wensen.</p>

<p>De rapporten die zullen worden gebruikt bij het genereren van een rapport worden
ingesteld in het bestand &lt;prefix&gt;/etc/lire/&lt;superservice&gt;.cfg (aangenomen
dat Lire ge&iuml;nstalleerd is de directory &lt;prefix&gt;).
Voor de FTP superservice bijvoorbeeld ziet het configuratiebestand er als volgt
uit:</p>

<p class="code">
# Report configuration for the FTP super service<br>
<br>
# Top X reports<br>
top-remote-host                hosts_to_show=10<br>
#top-files                      files_to_show=10<br>
top-files-in                   files_to_show=10<br>
top-files-out                  files_to_show=10<br>
top-users                      users_to_show=10<br>
<br>
# By day reports<br>
bytes-by-day<br>
<br>
# Transfers by X reports<br>
transfers-by-direction<br>
transfers-by-type</p>

<p>De FTP-superservice heeft dus acht raporten gedefini&euml;erd en alle behalve &egrave;&egrave;n
zijn geselecteerd. De "top-files" wordt gedeselecteerd door gebruik te maken van
het karakter "#". Het verwijderen van het karakter "#" zal het rapport opnieuw
selecteren.</p>

<p>Let erop dat niet alle regels die beginnen met een "#" rapporten zijn. in dit
configuratiebestand zijn de regels "Report configuration for the FTP super service",
"Top X reports", "By day reports" en "Transfers by X reports" commentaar.
Dezelfde dingen kunnen verwacht worden in de andere configuratiebestanden.</p>

<h2>Rapporten sorteren</h2>

<p>Ordenen is zeer eenvoudig. De volgorde waarin de rapportregels verschijnen in de
configuratiebestanden is de volgorde waarin de rapporten zullen worden weergegeven
in de uitvoer. Het herordenen van de regels in deze configuratiebestanden zal ze dus
ook herordenen in de uitvoer. Bijvoorbeeld, in het bovenstaande voorbeeld worden
transfers type voor type in het laatste rapport in de uitvoer gegeven.</p>

<h2>Rapporten aanpassen aan de eigen wensen</h2>

<p>Veel rapporten kunnen gedeeltelijk worden aangepast aan de eigen wensen met de configuratiebestanden.
Dit gaat zoals in het voorgaande deel is uitgelegd. Bijvoorbeeld deze DNS-superservice-configuratie:</p>

<p class="code"># Rapport configuratie voor de DNS-superservice<br>
<br>
# Top reports<br>
top-requesting-hosts               hosts_to_show=10<br>
top-requesting-hosts-by-method     hosts_to_show=10 method='recurs'<br>
top-requesting-hosts-by-method     hosts_to_show=10 method='nonrec'<br>
top-requested-names                names_to_show=10<br>
top-requested-names-by-method      names_to_show=10 method='recurs'<br>
top-requested-names-by-method      names_to_show=10 method='nonrec'<br>
requesttype-distribution<br>
requesttype-distribution-by-method method='recurs'<br>
requesttype-distribution-by-method method='nonrec'<br>
<br>
# By Day reports<br>
requests-by-period                 period=1d<br>
requests-by-period-by-method       period=1d method='recurs'<br>
requests-by-period-by-method       period=1d method='nonrec'<br>
<br>
# By Hour reports<br>
requests-by-period                 period=1h<br>
requests-by-period-by-method       period=1h method='recurs'<br>
requests-by-period-by-method       period=1h method='nonrec'</p>

<p>Alle vijftien rapporten zijn geselecteerd, maar bovendien is het voor de rapporten
met een top X output mogelijk het nummer X te defini&euml;ren. Met de bovenstaande configuratie
geeft het rapport <i>top-requesting-hosts</i> een Top 10.</p>

<p>Deze rapporten worden gegenereerd uit slechts acht rapportspecificaties.
Het gebruik van de parameters (<i>period</i>, <i>method</i>, <i>hosts_to_show</i>,
en <i>names_to_show</i>) maakt dit mogelijk. Dit is een van de nieuwe krachtige eigenschappen
van de nieuwe, op XML gebaseerde motor.</p>

<p><b>Belangrijk: alle instellingen van variabelen moeten op dezelfde regel worden geplaatst als de
rapportnaam!</b></p>

<p>Een meer exotisch voorbeeld kan gegeven worden aan de hand van het
WWW-superservice-configuratiebestand:</p>

<p class="code">top-referers-by-page        referer_to_show=5 page_to_show=10 referer_exclusion='^-$'</p>

<p>In dit voobeeld wordt een Perl <a href="http://www.nl.linuxfocus.org/English/July1998/article53.html">
reguliere expressie</a> gebruikt als inhoud voor de <i>referer_exclusion</i>-variabele. Deze expressie
komt overeen met alle referers "-". Zulke referers kunnen worden gevonden in het logbestand
in gevallen waarin bijvoorbeeld de URL van een web pagina is ingetikt door de gebruiker.
(Wanneer gebruikers je pagina bezoeken door op een link in een pagina te klikken die doorverwijst naar
je pagina, dan wordt de pagina waar de link vandaan komt gegeven in het refererveld.) Alle referers die
hetzelfde zijn als "-" worden uit de analyse gehouden.</p>

<h2>Low Level aanpassen van Rapporten</h2>

<p>Deze nieuwe uitgave is het begin van een heel nieuwe tak van Lire. De rapportgeneratie en de
specificatieprocessen zijn compleet herschreven om gebruik te kunnen maken van XML-technologie.
Rapporten worden
gespecificeerd in XML, maar de instelling van de variabelen werkt in gewoon ASCII-formaat. De voorgaande
rapportspecificatie was een Perlscript dat zowel de invoeropmaak als de uitvoeropmaak moest kennen.
Met de nieuwe XML-opmaak is de implementatie gescheiden van de specificatie en hoef je niet meer zowel
de invoer- als de uitvoeropmaak te kennen maar alleen de gegevens die verwerkt kunnen worden.</p>

<p>Dus, als je rapporten op laag niveau aanpast,
hoef je allen maar een beetje XML te kennen. Een voorbeeldrapport, genomen van de
&lt;prefix&gt;/share/lire/reports/firewall directory:</p>

<p class="code">&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;<br>
&lt;!DOCTYPE lire:report-spec PUBLIC<br>
  "-//LogReport.ORG//DTD Lire Report Specification Markup Language V1.0//EN"<br>
  "http://www.logreport.org/LRSML/1.0/lrsml.dtd"&gt;<br>
&lt;lire:report-spec xmlns:lire="http://www.logreport.org/LRSML/"<br>
 superservice="firewall" id="bytesperfrom" charttype="bars"&gt;<br>
<br>
 &lt;lire:title&gt;Top Bytes per From-IP Report&lt;/lire:title&gt;<br>
 &lt;lire:description&gt;<br>
  &lt;para&gt;<br>
    This report lists the IP addresses sending the highest data volume.<br>
  &lt;/para&gt;<br>
 &lt;/lire:description&gt;<br>
<br>
 &lt;lire:param-spec&gt;<br>
  &lt;lire:param name="ips_to_show" type="int" default="10"&gt;<br>
   &lt;lire:description&gt;<br>
    &lt;para&gt;This parameter controls the number of sending IP adresses to<br>
     display in the report.<br>
    &lt;/para&gt;<br>
   &lt;/lire:description&gt;<br>
  &lt;/lire:param&gt;<br>
 &lt;/lire:param-spec&gt;<br>
<br>
 &lt;lire:display-spec&gt;<br>
  &lt;lire:title&gt;Volume per sending IP, Top $ips_to_show&lt;/lire:title&gt;<br>
 &lt;/lire:display-spec&gt;<br>
<br>
 &lt;lire:report-calc-spec&gt;<br>
  &lt;lire:group sort="-rcvd_volume" limit="$ips_to_show"&gt;<br>
   &lt;lire:field name="from_ip"/&gt;<br>
   &lt;lire:sum name="rcvd_volume" field="length"/&gt;<br>
  &lt;/lire:group&gt;<br>
 &lt;/lire:report-calc-spec&gt;<br>
<br>
&lt;/lire:report-spec&gt;<br>
</p>

<h3>De <i>Lire</i> Naamruimte</h3>

<p>Het eerste dat je zou moeten opvallen is dat vrijwel ieder XML-element in dit rapport begint met
<i>lire:</i>. Dit wordt gebruikt om een naamruimte toe te wijzen aan dat element. Ieder element met de
<i>lire</i>-naamruimte is gedefini&euml;erd in XML DTD
http://www.logreport.org/LRSML/1.0/lrsml.dtd (lege link!), die kan worden doorgespit op
<a href="http://www.logreport.org/pub/docs/dtd/lrsml/">http://www.logreport.org/pub/docs/dtd/lrsml/</a>.</p>

<p>Alle andere elementen zouden moeten toebehoren aan de
<a href="http://docbook.sourceforge.net/">DocBook XML 4.2 DTD</a>. Zoals het element
&lt;para&gt; op de tiende regel bijvoorbeeld.</p>

<h3>Het veranderen van de titel die boven de door Lire gegenereerde rapporten verschijnt</h3>

<p>Als je de titel die verschijnt in het rapport wilt wijzigen, dan moet je de &lt;lire:title&gt;
inhoud in de &lt;lire:display-spec&gt; veranderen. Onthoud hierbij dat strings die starten met
"$" Perlvariabelen zijn waar de naam correspondeert met een van de gespecificeerde parameters
in de &lt;lire:param-spec&gt;-sectie.</p>

<p><b>Het lastige deel is dat je het juiste &lt;lire:title&gt; element moet nemen.</b>
Je moet het element nemen dat de inhoud is van de &lt;lire:display-spec&gt;-knoop. Het volgende
element bevat de gegevens die verschijnen in het uitvoerrapport. Het eerste &lt;lire:title&gt;-element
bevat de titel van het rapport die gebruikt wordt in de documentatie van de Lire-software.</p>

<p>Het volgende voorbeeld laat een fragment van de requests-by-result WWW-rapportspecificatie
zien. Je kunt zien dat de &lt;lire:display-spec&gt; nu niet alleen een titel als uitvoer geeft,
maar ook wat meer uitleg. Let er op dat alle inhoud in het &lt;lire:description&gt;-element geen
gebruik maakt van de <i>lire</i> naamruimte, en dus DocBook-inhoud is.

</p><p class="code">
 &lt;lire:display-spec&gt;<br>
  &lt;lire:title&gt;Requests By HTTP Result&lt;/lire:title&gt;<br>
<br>
  &lt;lire:description&gt;<br>
   &lt;para&gt;<br>
    The most common HTTP status codes are given below:<br>
    &lt;variablelist&gt;<br>
<br>
     &lt;varlistentry&gt;<br>
      &lt;term&gt;200&lt;/term&gt;<br>
      &lt;listitem&gt;<br>
       &lt;para&gt;OK (The request has succeeded.)&lt;/para&gt;<br>
      &lt;/listitem&gt;<br>
     &lt;/varlistentry&gt;<br>
<br>
      &lt;!-- rest is cut out --&gt;<br>
    &lt;/variablelist&gt;<br>
   &lt;/para&gt;<br>
  &lt;/lire:description&gt;<br>
 &lt;/lire:display-spec&gt;<br>
</p>

<p>Het rapport zal er ongeveer uitzien als (alleen het bovenste deel hier):

</p><p class="code">
  Requests By HTTP Result<br>
<br>
   The most common HTTP status codes are given below:<br>
<br>
   200 OK (The request has succeeded.)<br>
<br>
   201 Created  (The  request  has  been fulfilled and resulted in a new resource being created.)<br>
<br>
   206 Partial  Content  (The server has fulfilled the<br>
</p>

<h3>Het veranderen van het type afbeelding voor een rapport</h3>

<p>De meeste rapporten bevatten afbeeldingen die afhankelijk zijn van de gegevens. Deze afbeeldingen
worden gegenereerd met behulp van de gegevens en de rapportspecificatie defini&euml;ert de opmaak waarmee
de afbeelding wordt afgedrukt. Neem bijvoorbeeld het volgende stuk uit het FTP transfers-by-type rapport.</p>

<div class="programlisting">
&lt;lire:report-spec xmlns:lire="http://www.logreport.org/LRSML/"
 superservice="ftp" id="transfers-by-type" charttype="pie"&gt;
</div>

<p>Voor dit rapport worden de gegevens gevisualiseerd in een taartdiagram zoals te zien is aan het
@charttype attribuut in de bovenstaande code. Het resultaat ziet er zo uit:</p>

<p align="center"><img src="../../common/images/article218/t_art218_ftp1.png" width="350" height="303" alt="[charttype pie]"></p>

<p>Door het diagramtype te veranderen in <i>staaf</i> zoals in 'charttype="bars"'
verandert de uitvoer in:</p>

<p align="center"><img src="../../common/images/article218/t_art218_ftp2.png" width="350" height="296" alt="[charttype bars]">
</p>

<p>Let erop dat het rapport een bug bevat. Het rapport staat op het transfertype
niet het bestandstype. Deze bug is al gemeld.</p>

<h2>Specifieke informatie</h2>

<p>Meer specifieke informatie over de XML-taal die gebruikt is voor de rapportspecificatie
kan worden gevonden op de LogReport
<a href="http://www.logreport.org/pub/docs/dtd/lrsml/index.html">web site</a>.
Je zult zien dat de taal vrij uitgebreid is, en voorlopig kan ik je aanraden om gebruik te maken
van de rapportspecificatie die als gids bij de distributie wordt geleverd.</p>

<p>Elementen die niet besproken zijn in dit artikel maar die wel worden gebruikt in deze
rapporten voor de specificatie van parameters zijn (&lt;lire:param-spec&gt;) en de
berekening van de uitgedraaide gegevens (&lt;lire:report-calc-spec&gt;). Vooral de laatste heeft veel
opties en maakt gebruik van bestaande kennis van het interne formaat (genaamd DLF)
waarin de loggegevens worden opgeslagen. Dit zal worden besproken in een toekomstig artikel.</p>

<h2>Conclusie</h2>

<p>Dit artikel heeft de XML gebaseerde rapport engine ge&iuml;ntroduceerd en uitgelegd
hoe je de rapporten die je krijgt kan aanpassen. Meer informatie kan worden gevonden op
de LogReport web site: <a href="http://www.logreport.org/">http://www.logreport.org/</a>.</p>

<p>Als je contact op wilt nemen met het LogReportteam kun je IRC op gaan.
De ontwikkelaars kunnen vaak worden gevonden op het #logreport kanaal op het
<a href="http://www.openprojects.org/">OpenProjects.org IRC netwerk</a>.
Vragen, commentaar en ondersteuningsvragen zijn welkom. Als je liever gebruik maakt van
e-mail kun je het team bereiken via de openbare mailinglijst
<a href="mailto:questions at logreport.org">questions at logreport.org</a>.</p>
</body></html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 230 bytes
Desc: not available
Url : http://lists.logreport.org/pipermail/development/attachments/20020210/92ca2b28/attachment.bin 


More information about the Development mailing list