ugrás a tartalomhoz

Log parser algoritmus

H.Z. · 2014. Jan. 23. (Cs), 23.06
Múltkor kíváncsiságból összedobtam egy pici szkriptet, amivel a tűzfalam logjából gyűjtögettem ki különböző infókat (melyik portokon próbálkoztak legtöbbet, milyen címekről stb.)
Tegnap eszembe jutott, hogy feltalálom a kereket és megcsinálom kicsit általánosabbra az egészet. Viszont egy flame-be hajló beszélgetés felpiszkálta a fantáziámat: talán valamivel profibb módon is meg lehetne csinálni, mint fixen megadott stringekre illeszkedő sorok regexp alapján történő kiválogatásával.
Próbáltam keresgélni olyat, hogy log parser algorithm, de nem igazán adott használható találatokat. Ha elhagytam a logot a keresésből, akkor meg elsősorban olyan algoritmusok leírását kapom, ami fordító programok írásakor jöhet jól (kötöttebb a szintaxis, mint egy logban).
Tudnátok ötletet adni, hogy mit próbáljak elolvasni, ami segíthetne valamivel "tudományosabb" alapokra helyezni a kis programocskámat?

ui: mielőtt valaki félreértene, csak tanulás/játék a cél, nem akarom újra megírni azt, amit már n+1-szer megírtak sokkal komolyabb formában, mint ahogy én valaha is képes leszek rá.
 
1

Két út áll előtted: vagy

Joó Ádám · 2014. Jan. 23. (Cs), 23.37
Két út áll előtted: vagy megismerkedsz a fordítók által járt úttal (lexelés regexek mentén) vagy az állapotgépekkel, és kézzel végzed el ugyanazt.
2

Fordítókkal kezdtem volna

H.Z. · 2014. Jan. 23. (Cs), 23.53
Fordítókkal kezdtem volna újra ismerkedni emiatt (húsz éve ott hagytam abba, hogy formális nyelvek, meg valami nagyon csúf dolog, ami most nem ugrik be :) ), de ott némileg kötöttebb formátummal kell számolni, mint egy log esetében, ahol bármi belerondíthat a szövegbe és nem dobhatok syntax errort, hanem ki kell találnom, hogy mit kezdjek vele...
(jó, ez már AI kategória)

Állapotgép? Hm. Ennek utánanézek, köszi! (a kifejezést ismerem, hogy ténylegesen mit jelent, nem annyira - ebben a témában eszembe nem jutott volna)