Jan 18 2009

MySQL Query-Statistik Script

Tag: Allgemein, Linux, Programmierung, Tricks & KniffeMartin @ 15:03

Da ich bis jetzt beim kurzweiligen suchen bei Google nichts gefunden habe was die Sache für mich übernimmt, habe ich mal ein Perl-Script zusammen geschustert, welche verschiedene Query-Statistiken von MySQL, je nach Bedarf, ausgibt.

Ich muss dazu sagen, dass dieses Script eigentlich dafür gedacht war, die Ausgabe via SNMP abzufassen und dann in Cacti darzustellen. Leider ist es dazu nicht gekommen.

Das Script macht sich aber auch zur “Just-in-Time” Kontrolle der Query-Quantität ganz gut oder um die Ausgabe mit einen kleinen Shell-Script-Wrapper in ein RRD zu schreiben und dann als Graph darzustellen.

In etwa würde das auf einer Linux-Shell dann so aussehen:

[root@server bin]# watch -n10 “./mysql_query_stat.pl -u root -p password -h mysqlserver -n 10 -SQUID;”

Every 10,0s: ./mysql_query_stat.pl -u root -p password -h mysqlserver -n 10 -SQUID;

QPSnow:      471
QPSall:        731
Selects/s:    381
Inserts/s:    16
Updates/s:   9
Deletes/s:   7

Dieser Befehl erzeugt die Ausgabe der jetzigen Query-Quantität aller 10 Sekunden. Für ander Optionen (wie z.B. die gut zu parsende One-Liner Ausgabe) könnt Ihr euch das Script ja mal anschauen.

Für Fragen, Anregungen, Bug-Reports oder Feature-Wünsche wäre ich dankbar.

Das Script gibts natürlich hier.

MfG Maddin


Jul 24 2008

Filterauswertung für SpamAssassin

Tag: Linux, Programmierung, Tricks & KniffeMartin @ 13:02

Viele von Euch oder zumindest diejenigen die ein funktionierendes Mailsystem ihr eigen nennen, werden um die Nutzung einer AntiSpam Software nicht herumkommen. Die wahrscheinlich bekannteste ist SpamAssassin. Da ich jedoch in diesem Artikel weder auf die Installation noch Beschreibung von SpamAssassin eingehen möchte, kann ich für interessierte Leser den Wiki-Artikel empfehlen.

Worauf ich zu sprechen kommen möchte, ist ein Script Namens sa-stats.pl. Dieses Perl Script, implementiert von David Ramsden, wertet SpamAssassin-Einträge aus Maillogfiles aus und gibt diese, aufgesplittet nach Spam und Ham, in tabellarischer Form aus. Dies ist z.B. sinnvoll um zu sehen welcher der User oder welche Domain prozentuall den meisten Spam erhält.

Da es unsere Mail-Admin’s aber auch interessiert, welche Filter dazu führen dass eine Mail als Spam deklariert wird, wurde ich beauftragt eine kleine Erweiterung des Scripts zu schreiben, welche die Quantität und den prozentualen Anteil der Filter augibt. Kurz gesagt eine Auswertung der von SpamAssassin vernwendeten Filter.

Interessierte finden das Script hier. Über Kritik, Lob, Anregungen oder sonstige Kommentare würde ich mich freuen.


Jul 07 2008

Design und Content perfekt getrennt mit XSLT und PHP-SimpleXML

Tag: Programmierung, WebFrank @ 08:44

1

XSLT (Extensible Stylesheet Language Transformation) ist eine noch recht junge Sprache die aus DSSSL 120hervorgegangen ist. Sie übersetzt einfache XML-Inhalte nach den in der XSLT-Datei festgelegten Regeln in eine Andere Sprache - zumeist HTML. Dazu wird ein sogenannter XSLT Prozessor genutzt der das XML entweder Serverseitig Transformiert und so schon HTML an den Client ausliefert oder der Browser übernimmt diesen Part und übersetzt lokal. Nähere Information bietet hier wie immer die Wikipedia121. Ich zeige hier in erster Linie den Weg über den Browser auf da die Kompatibilität inzwischen in meinen Augen ausreichend ist (IE ab Version 6, Mozilla ab Version 1.0.2).

PHP-SimpleXML ist eine Reihe von Funktionen die PHP anbietet um im XML Dateien aus Objekten zu erzeugen oder Objekte aus XML-Dateien zu erstellen. Dazu bedient sie sich einer DOM Struktur. SimpleXML ist ein Bestandteil von PHP der Version 5 und wird Standardmäßig mitinstalliert. Die meisten Provider bieten diese Funtionen auch an. Weitere Infos bietet hier PHP.net122 selbst.

Was wir hier nun probieren wollen ist mit PHP-SimpleXML XML Dateien zu erzeugen die dann mit XSLT Dargestellt werden. Erfahrungen mit PHP, HTML, CSS und XML an sich sind dabei vorausgesetzt. Ziel ist es eine Nutzerliste wie sie zum Beispiel in einem Forum zu sehen wäre anzuzeigen. Die Möglichkeiten sind natürlich unendlich ;o) .

Weiterlesen: “Design und Content perfekt getrennt mit XSLT und PHP-SimpleXML”