TLWWW statisztika

1. Bevezetés

Ez a külön megvásárolható modul csak a TextLib web szerver program kiegészítéseként használható. A statisztika a tlwww programhoz beérkező kéréseken alapul, alapadatai automatikusan képződő szövegfájlokba íródnak.

Statisztika készítéskor ezekből a fájlokból készíti el különböző szempontok szerinti táblázatokat.

1. ábra: Példa egy táblázatra
kep

1.1. Telepítés

A programot külön telepíteni nem kell, elegendő a felújítás (1640 verziótól kezdve). Ott lesz a program minden felhasználónál, de csak a modult megvásárlóknál készülnek azok az adatfájlok, amikből a statisztika dolgozik.

Feltétlenül szükséges a használatához a PHP program telepítése. Minimum 5.4 verziót javaslunk. Linux alatt ez kevésbé lehet gond. Windows alatti telepítésről olvashat a TLWWW leírásban (http://textlib.hu/html/tlwww.htm#v1640)

Felújításkor létrejön a kereső oldalt is tartalmazó mappában egy tlwstat nevű almappa. Az ebben található index.php fájl az, amivel a statisztika készítés indul.

Pl. a textlib.hu gépen ez a kereső oldal (http://textlib.hu/tlwww/), ez pedig a statisztika oldal (http://textlib.hu/tlwww/tlwstat)

1.2. Konfigurálás

A TLWWW-hez tartozó tlwww.cfg-ben be kell állítani, hogy gyűjtse a statisztikát.


collectstat=1

A fentebb említett tlwstat mappában található tlwstat.cfg fájlban lehet beállítani minden fontosat. Felújításkor ez a fájl létrejön, ha még nem volt. De ha már van, akkor nem íródik fölül. Akkor csak a tlwstat.cfp fájl módosul. Ezt mintának használhatjuk a beállításokhoz, beleértve a jövőbeni fejlesztések eredményeként létrejövő új beállítási lehetőségeket is.

A tlwstat.cfg-ben lehet megadni, hogy a toplistákban hány tétel szerepeljen.

Megadható, hogy a létező statisztikák közül melyeket akarja használni a könyvtár. Ezeket egy php tömbben kell felsorolni, amelyik nem kell, azt csak ki kell kommentezni (pl. a sor elejére írt '//' segítségével).


// Toplistákban az első hány tétel látsszon?
$TlWstatTopMaxNum=15;

$TlWstatProc=array(
"TlWstatKeresTop",           // Minden keresés toplista
"TlWstatKeresTop/notfound",  // Minden keresés - ami nem talált - toplista
// Indexes keresések - indexfájl megadható a per jel után
"TlWstatKeresIndexTop/keres",// Bármi = egyszerű keresés
"TlWstatKeresIndexTop/ti",   // Cím
"TlWstatKeresIndexTop/au",   // Szerző
"TlWstatKeresIndexTop/wo",   // Szavak
"TlWstatOS",                 // Operációs rendszer
// "TlWstatBongeszo",        // Böngésző típusa - nem kell nekünk
"TlWstatHeti",               // Heti bontás
"TlWstatNapi",               // Napi bontás
"TlWstatOrankent" );         // Órák szerinti bontás

Néhány stasztikákhoz lehet/kell még egyéb beállítás, azt a statisztika leírásánál részletezzük.

1.3. Kinézet

A statisztika lapok kinézetét a tlwstat.css fájlban lehet állítani. Az ottani megjegyzésekből látszik, hogy melyik beállítás mire vonatkozik.

Felújításkor a tlwstat.css fájl nem íródik fölül, de ha még nincs, akkor létrejön. Ami mindig új lesz, az a példa css, a tlwww.csp.

1.4. Adatgyűjtés

A TLWWW a statisztika szemponjából fontos kéréseket folyamatosan elmenti, később könnyen feldolgozható formában. A lényegtelen kéréseket (pl. az olvasó a találatok között lapozgat, megnézi a könyvnek a szerzőjét stb.) nem mentjük.

Minden hónapban új fájl készül, tlwww-EV-HONAP.stat.txt néven (pl. tlwstat-2018-09.stat.txt). Abba a mappába kerülnek, ahol a log fájlok is találhatók. Linuxon ez /var/log/tlwww/, Windowson általában "%PROGRAMDATA%\TextLib WWW szerver".

1.5. Használat

A statisztikát böngésző programban nézhetjük meg. A TLWWW kereső oldalunk URL-jének a végét erre kell lecserélni: /tlwstat/index.php


xxx.hu/tlwww/index.html helyett xxx.hu/tlwww/tlwstat/index.php
yyy.hu/tlwww/           helyett yyy.hu/tlwww/tlwstat/index.php
zzz.hu/homepage.htm     helyett zzz.hu/tlwstat/index.php

Ha a tlwww.cfg-ben megadtuk az index.php-t kezdő oldalként (DefaultFiles beállítás), akkor az index.php nem is kell megadni, elég csak ennyi:


xxx.hu/tlwww/tlwstat/
yyy.hu/tlwww/tlwstat/
zzz.hu/tlwstat/

A megjelenő oldalon kiválasztható, hogy melyik év melyik hónapjáról akarunk statisztikát kérni. Az OK gomb megnyomásával indul a számolás.

2. ábra: Az év/hónap kiválasztása
kep

Néhány másodperc várakozás után megjelennek a kívánt táblázatok.

1.6. Statisztikák

Jelenleg ezek a statisztikák érhetők el. Kérésre készíthetünk újabbakat, PHP-ben programozni tudók a segítségünkkel akár sajátot is könnyen csinálhatnak.

Egyes statisztikák az összes elmentett kéréssel számolnak. Több statisztika viszont csak a keresésekkel, mert csak annak van értelme. Pl. a keresőmező szerinti bontás, a dok.típus szerinti stb.

1.6.1. TlWstatKertipus

Minden kérés - a kérés tipusa szerint. Pl: keresés, böngészés, olvasó belépés, előjegyzés, foglalás, hunmarc letöltés stb.

3. ábra: TlWstatKertipus eredménye
kep

1.6.2. TlWstatKeresTop

Minden keresésre vonatkozó összesített toplista. Amiket az adott hónapban a legtöbbet kerestek.

4. ábra: TlWstatKeresTop eredménye
kep

Ugyanez használható arra is, hogy azokat a kereséseket nézzük meg, amik nem eredményeztek találatot. Erre szolgál a 'notfound' paraméter:


"TlWstatKeresTop/notfound",  // Minden kereses - amit nem talaltak!

5. ábra: TlWstatKeresTop/notfound eredménye
kep

1.6.3. TlWstatKeresIndexTop

Egyetlen indexre vonatkozó keresési toplista. Ha külön akarjuk látni a címek, szerzők, tárgyszavak, stb. leggyakrabban keresett kulcsait.

6. ábra: Cím szerinti toplista
kep
7. ábra: Szerző szerinti toplista
kep

Az indexfájl azonosítóját perjel után kell megadni a tlwstat.cfg-ben, Cím és Szerző index esetén:


"TlWstatKeresIndexTop/ti",
"TlWstatKeresIndexTop/au",

Az indexfájlok azonosítóit a kereső oldalból másoltuk ide. A Részletes keresés fül forrásában ezt találhatjuk:


<option value="au">Szerző
<option value="aukz">Alkotó
<option value="ti">Cím
<option value="su">Téma
<option value="wsu">Témák
<option value="wo">Szavak
<option value="kz">Közreműködő
<option value="ka">Kiadó
<option value="mhely">Kiadás helye
<option value="bn">ISBN
<option value="sn">ISSN
<option value="so">Sorozat
<option value="eto">ETO jelzet
<option value="xsu">Tárgyszó
<option value="szak">Szakjelzet
<option value="la">Nyelv
<option value="id">Tárgyidő
<option value="kiad">Kiadás éve
<option value="gy">Gyarapodás
<option value="in">Interneten
<option value="vkod">Vonalkód
<option value="szt">Oktatási forma
<option value="idkot">Időszaki kiadványa
<option value="szam">Időszaki számozása
<option value="kelt">Időszaki keltezése
<option value="evf">Időszaki évfolyama</option>

Ezeken kívül használható még a 'keres', amivel az Egyszerű keresést tudjuk megadni.


"TlWstatKeresIndexTop/keres",// Barmi - egyszeru kereses

8. ábra: Bármi (egyszerű keresés) szerinti toplista
kep

1.6.4. TlWstatOS

Minden kérés - operációs rendszer szerinti bontás

A tlwstat.cfg-ben lehet megadni ($TlWstatOSDat), melyik operációs rendszer hogyan ismerhető fel a böngésző program által küldött azonosító szövegből. Ezt persze készen adjuk, de akinek nem felel meg, az bővítheti tetszés szerint.


// TlWstatOSDat - Operacios renszer
$TlWstatOSDat = array(
 '/textlib.hu/i'         =>  'Linux',      // textlib.hu kozos kereso/hundir
 '/windows nt 10/i'      =>  'Windows 10',
 '/windows nt 6.3/i'     =>  'Windows 8',
...

9. ábra: TlWstatOS eredmény
kep

1.6.5. TlWstatBongeszo

Minden kérés - a böngésző program tipusa szerinti bontás

A tlwstat.cfg-ben lehet megadni ($TlWstatBrowserDat), melyik böngésző hogyan ismerhető fel a böngésző program által küldött azonosító szövegből. Ezt is készen adjuk, de akinek nem felel meg, az bővítheti tetszés szerint.


// TlWstatBrowserDat - Bongeszo programok
$TlWstatBrowserDat = array(
 '|textlib.hu|i'    => 'TextLib.hu közös kereső', // textlib.hu kozos kereso/hundir
 '|firefox/|i'      => 'Firefox',
 '|edge/|i'         => 'Edge',
 '|opera|i'         => 'Opera',
...

10. ábra: TlWstatBongeszo eredmény
kep

1.6.6. TlWstatHeti

Minden kérés - a hét napjai szerinti bontásban (Hétfő, kedd, ...)

11. ábra: Heti statisztika
kep

1.6.7. TlWstatNapi

Minden kérés - a hónap napjaira lebontva

1.6.8. TlWstatOrankent

Minden kérés - óránkénti bontásban

1.6.9. TlWstatIndex

Keresések - keresőmező szerinti bontása. Ebből az látszik, mely mezők alapján keresnek az olvasók legtöbbet.

12. ábra: Keresőmező szerinti bontás
kep

1.6.10. TlWstatDoktip

Keresések - dokumentum tipus szerinti bontása.

1.6.11. TlWstatReferer

Keresések - a hivatkozó (ahonnan a keresést indították) weboldal szerinti bontás. Több weboldalról is indulhatnak a keresések.

Legtöbbször a katalógus/opac oldalról indul a keresés.

De érkezhet a keresés a TextLib közös keresőtől is. Vagy bármilyen más közös keresőtől, ami le tud kérdezi TLWWW-t.

A JAMK-ban pl. a normál kereső oldalon (http://opac.jamk.hu) kívül vannak külön oldalak a (mesék (http://mese.jamk.hu/)), (versek (http://vers.jamk.hu/)), (drámák (http://drama.jamk.hu/)) stb. keresésére.

A TlWstatReferer statisztikával azt láthatjuk, hogy melyik oldalról hány keresés érkezett.

A hivatkozó weboldalt URL-jének az elejéről a 'www.' automatikusan le lesz vágva, ezzel nem kell külön foglalkozni. Tehát az xxx.hu es a www.xxx.hu ugyanaz lesz :-)

Megadható egy 'azonosság' táblázat (array) a tlwstat.cfg-ben Ha pl. különbö domain nevekkel érhető el a katalógus, ezeket egyként tudjuk kezelni.

Ez a táblázat arra is jó, hogy ha nem a domain nevet akarjuk megjeleníteni, hanem helyette valami olvasmányosabb megnevezést. A textlib.hu gépről (TextLib közös kereső) érkező kéréseket is külön láthatjuk, amint az a lenti beállítás példában is látható.


$TlWstatRefererDat = array(
 "|textlib.hu|i"       => "TextLib közös kereső",  // ezt ne bántsd!
 "|79.172.212.90|i"    => "TextLib közös kereső",  // ezt ne bántsd!
 "|katalogus.xxx.hu|i" => "Kereső oldalunk",       // JAVITANDO!
 "|opac.xxx.hu|i"      => "Kereső oldalunk",       // JAVITANDO!
 "|192.12.34.56|i"     => "Kereső oldalunk",       // JAVITANDO!
 "|opac.xxx.hu/cgi-bin/tlwww.cgi|i"  => "TLWWW oldal",
 "|opac.xxx.hu/vers/|i"=> "Vers katalógusunk",
 "|mese.xxx.hu|i"      => "Mese katalógusunk" );

13. ábra: TlWstatKeresTop eredménye
kep

1.6.12. TlWstatHelyIP

Keresések - A keresést végző gép (ahol a böngésző program fut) IP címe szerinti bontás. Ennek csak úgy van értelme, ha megadunk a tlwstat.cfg-ben IP cím tartományokat. Például, hogy melyek a központi könyvtár gépei, melyek az egyes fiókok gépei, stb. Ezeket a PHP-ban is gyakran használt reguláris kifejezéssel lehet megadni.

A textlib.hu gépről is érkezhetnek kérések, ezeket érdemes külön látni a statisztikában.


$TlWstatHelyIpDat = array(      // regularis kifejezes!
 "/79\.172\.212\.90/i"   => "TextLib közös kereső",   // ezt ne bántsd!
 "/10\.3\.0\..*/i"       => "Belső hálózat gépei",    // JAVITANDO!!
 "/193\.225\.11\..*/i"   => "Külső IP címeink",       // JAVITANDO!!
 "/84\.3\.122\.150/i"    => "Rendszergazdánk otthoni gépe" );

Amire nem adtunk meg semmit, azok az EGYÉB sorba fognak kerülni. Ebből a statisztikaból tudjuk meg pl. hogy hányan kerestek a katalógusban a konyvtári gépekről, és hányan külső gépekről.

1.6.13. TlWstatHelyDomain

Keresések - A keresést végző gép (ahol a böngésző program fut) domain neve szerinti bontás. A domain név utolsó tagja szerint készül a bontás, ilyen sorok lesznek tehát: .hu, .net, .com, .eu stb.

A domain név csak akkor ismert, ha linux alatt az apacheban, windows alatt a tlwww-ben be van állítva a HostnameLookups opció. Ez alaphelyzetben ki van kapcsolva, mivel jelentősen lassíthatja a működést.


Linux/apache: config fájlban:
   HostnameLookups On

Windows/tlwww: tlwww.cfg-ben:
   HostnameLookups=on

1.6.14. TlWstatKeresSpec

Speciális kereséseket külön is meg lehet számolni. Például, hogy hány keresés volt az e-könyvtárra, a vers katalógusban (jamk), A képeslapokra (vmk), az újdonságokra stb.

A $TlWstatKeresSpecDat többen lehet megadni, mik a speciális keresések. Indexfájl/keresett szöveg párokat lehet megadni. Aki ezt használná, és kérdése van, keresse meg az InfoKert.


// TlWstatKeresSpecDat
$TlWstatKeresSpecDat = array(
 'Képeslap'           => array( 'ih' =>   '!K.peslap!i' ),         // vmmk: Képeslap
 'E-Könyvtár'         => array( 'in' =>   '!E-K.nyvt.r!i' ),       // jamk: E-Könyvtár
 'Újdonságok'         => array( 'gy' =>   '!(.*honap|.*het)!i'),   // újdonságok
 'Hatáskör/könyvtári' => array( 'xpld' => '!^1$!i' ),     // jamk,vmmk: hatáskör
 'Hatáskör/település' => array( 'xpld' => '!^gx!i' ),     // jamk,vmmk: hatáskör
);

14. ábra: Példa az eredményre
kep

Vissza: HTML dokumentáció   ;   TextLib honlap