810-bootchart.jpg

Man fragt sich ja gelegentlich was der Server eigentlich macht, wenn er hochfährt… heute morgen hat meiner zum Beispiel bestimmt noch ein Bierchen getrunken, bevor er losgelegt hat. Für die Visualisierung (der Mensch will doch was zum gucken haben) gibt es ein Tool namens bootchart , welches bereits in vielen großen Distributionen (wenn meistens auch nur im unstable-Zweig) aufgenommen wurde. Nebenstehend eine Beispielgrafik von der Bootchart-Webseite  eines nicht-optimierten Gentoo-Systems.

Ich beschreibe nun kurz die Einrichtung von Bootchart, diese ist nicht weiter kompliziert:

  1. echo "app-benchmarks/bootchart" >> /etc/portage/package.keywords

  2. emerge -av bootchart

  3. RC_BOOTCHART="yes" in /etc/conf.d/rc

  4. Hinzufügen von bootchard zum Bootloader ( Details für grub hier ): Lilo (hier beispielhaft, wichtig ist der “append”-Teil):

    1
    2
    3
    4
    5
    
    image=/boot/vmlinuz
    label=gentoo
    read-only
    root=/dev/hda3
    append="init=/sbin/bootchartd " #Bootchart
    

    Anschließend natürlich ein “lilo” in die Console!

  5. Editieren von /etc/bootchartd.conf

Ich möchte mir zum Beispiel direkt die Grafiken als SVG im Verzeichnis /var/log/bootchart/ erzeugen lassen(benötigt Java!):

1
2
3
AUTO_RENDER="yes"
AUTO_RENDER_FORMAT="svg"
AUTO_RENDER_DIR="/var/log/bootchart/"

Anschließend ein “mkdir /var/log/bootchart”.

Man kann beispielsweise noch das BSD-Process-Accounting aktivieren um detailreichere Ergebnisse zu erhalten, aber das ist für mich momentan noch nicht notwendig gewesen :)

Wenn man die Bilder nicht automatisch generieren lässt, kann man das erzeugte bootchart.tgz (Spezifiziert in /etc/bootchartd.conf unter BOOTLOG_DEST) auf der Webseite von bootlog  ganz unten hochladen und sich die Grafiken generieren lassen. Alternativ kann man das File auch direkt von der Kommandozeile aus rendern lassen: Beispiel für das SVG-Format (für andere bitte die README lesen):

1
curl --form format=svg --form log=@/var/log/bootchart.tgz http://render.bootchart.org:8080/bootchart/render > bootchart.svgz

Mal sehen, ob sich was optimieren lässt.