Wie lege ich fest, dass Urchin ein Webserver-Protokoll aus der Standardeingabe (stdin) lesen kann?

Unter bestimmten Umständen kann es sinnvoll sein, wenn das Protokollverarbeitungsmodul von Urchin die Daten des Webserver-Protokolls direkt aus der Standardeingabe (stdin) statt aus der eigentlichen Datei lesen kann. Urchin unterstützt die Konfiguration einer Protokollquelle, die aus der Standardeingabe und nicht aus der eigentlichen Datei liest.

Konfigurieren Sie im Protokollmanager zuerst eine neue Protokollquelle mit dem Namen „stdin“, um Urchin für diesen Zweck zu konfigurieren. Verwenden Sie dazu die folgenden Parameter:

Protokolleinstellungen

  • Protokolldateispeicherort: lokal
  • Protokolldateipfad: –
  • Protokollformat: auto

Erweiterte Einstellungen

  • Protokollziel: Nicht ändern
  • Abfragekurzzeichen: ?
  • URI-Stamm in Kleinbuchstaben: Aus

HINWEIS: Es ist sehr wichtig, dass für den Protokolldateipfad ein einzelner Bindestrich „-“ (ohne Anführungszeichen) festgelegt wird.

Wählen Sie dann für jedes Profil, das aus „stdin“ lesen soll, ganz einfach auf der Konfigurationsseite „Profile -> Protokollquelle“ die neue Protokollquelle „stdin“ aus.

Wichtiger Hinweis: Urchin-Profile, die mit einer Protokollquelle „stdin“ konfiguriert sind, können nicht mit dem Urchin-Planer ausgeführt werden. Der Planer verfügt über keine Möglichkeit zur ordnungsgemäßen Zuweisung des Protokolleingabestroms. Protokolle für ein Profil mit einer Protokollquelle „stdin“ können nur durch ein manuelles Ausführen von Urchin verarbeitet werden. Das folgende einfache Beispiel veranschaulicht, wie Sie Urchin aufrufen würden:

  1. Öffnen Sie ein Fenster der Befehls-Shell für das Urchin-System.
  2. Wechseln Sie in das Verzeichnis „bin“ der Urchin-Installation.
  3. [UNIX-basierte Systeme] Führen Sie urchin mit „./urchin -p myprofile < /path/to/webserver.log“ aus.
    • [Windows-basierte Systeme] Führen Sie urchin mit „urchin -p myprofile < C:\path\to\webserver.log“ aus.

„stdin“ als Protokollquelle bietet Ihnen eine erhebliche Flexibilität, da Sie ein Protokoll in gewissem Umfang vorverarbeiten können, bevor es von Urchin gelesen wird.

Weitere Beispiele

Extrahieren Sie Treffer für einen einzelnen virtuellen Host aus einem Protokoll, das aus Treffern vieler unterschiedlicher Hosts besteht. Übertragen Sie die Ergebnisse dann an Urchin:

grep " www.mydomain.com " /path/to/alldomains.log | urchin -p mydomain.com

Extrahieren Sie Rohdaten-Treffer des Webservers aus einer relationalen Datenbank. Verwenden Sie dazu eine Art eingebettetes SQL-Skriptscript. Übertragen Sie die Daten dann zur Verarbeitung an Urchin.

sql-extract --date 20040302 --domain mydomain.com | urchin -p mydomain.com

Kommentieren

Suchen