> ## Content Index
> Fetch the complete content index at: https://t01.li/llms.txt
> Use this file to discover other available public pages before exploring further.

# LogWerk – weil ich nur sehen wollte, welche Bots den Log vollmüllen
- URL: https://t01.li/geo-seo/logwerk-weil-ich-nur-sehen-wollte-welche-bots-den-log-vollmullen/
- Published: 2026-07-06T05:06:32.000Z
- Updated: 2026-07-06T05:16:46.000Z
- Description: Ich wollte nur schnell sehen, welche Bots meinen Server-Log vollmüllen. GoAccess und Logdy waren mir dafür zu viel Setup, also habe ich LogWerk gebaut: browser-basiert, deine Daten bleiben lokal, erkennt 60 Bots samt KI-Crawlern wie GPTBot und ClaudeBot. v1.2, ausbaufähig, Feedback erwünscht.
- Author: Tobias Glawe
- Tags: GEO und SEO

Ich habe mir eine gefühlte Ewigkeit einen Wolf nach einem vernünftigen Tool für Server-Logfiles gesucht. Irgendwann landet man bei den üblichen Verdächtigen, und ganz oben standen GoAccess und Logdy – beide sehr mächtig, beide etablierte Pakete, beide für meinen Fall mit Kanonen auf Spatzen geschossen.

Denn ich wollte eigentlich nur eine `access.log` irgendwo reinziehen und in Sekunden sehen, welche Bots da wo ihr Unwesen treiben. Kein Monitoring-Stack, kein Dauerbetrieb, kein weiteres Ding, das permanent läuft. Also habe ich mir so ein Teil selbst gebaut – *LogWerk*.

Beziehungsweise bauen lassen – den Code hat das frisch erschienene [*Claude Sonnet 5*](https://t01.li/ki-news/claude-sonnet-5-agentisch-naeher-an-opus-mit-token-haken-beim-preis/) geschrieben. Ein Frontend ohne Backend und Build-Step ist genau die Sorte Aufgabe, an der ein Coding-Agent glänzt – überschaubarer Scope, keine exotischen Libraries im Stack, klares Ziel, sofort im Browser testbar.

## TL;DR 

*LogWerk* ist ein browser-basierter Server-Log-Analyzer, den ich gebaut habe, weil mir *GoAccess* und *Logdy* für den schnellen Blick ins Log zu viel Setup waren.

- Läuft komplett im Browser, deine Log-Daten bleiben lokal – kein Backend, keine Datenbank.
- Erkennt 60 Bots namentlich, inklusive KI-Crawler wie GPTBot, ClaudeBot und PerplexityBot.
- Nginx/Apache-Presets, Custom-RegEx, Offline-Geo-IP, Session-Timelines, CSV-Export.
- Version 1.2, MIT-lizenziert und ausbaufähig – Feedback und Issues im GitHub-Repo erwünscht.

## Warum mir die üblichen Verdächtigen zu viel waren

[*GoAccess*](https://goaccess.io/?ref=t01.li) ist ein Klassiker, und das zu Recht. Echtzeit-Analyse, Terminal-UI, auf Wunsch ein self-contained HTML-Report. Genau da fing für mich das Problem an. Die Bedienung läuft primär übers Terminal, und für den laufenden Betrieb landet man schnell bei einem installierten Binary oder einem Container. Ich wollte für eine schnelle Log-Auswertung, aber weder das eine kompilieren noch das andere hochziehen.

[*Logdy*](https://logdy.dev/?ref=t01.li) ist eleganter, als ich zuerst dachte – ein einzelnes Binary, das man in den PATH legt und das eine lokale Web-UI auf einem Port startet. Nur ist es eher fürs Live-Tailing von App-Logs gebaut als für die Frage, was in dieser einen `access.log` von heute Morgen eigentlich steht. Auch hier läuft am Ende ein Prozess, den ich für einen Fünf-Minuten-Blick nicht starten wollte.

Beide lassen die Daten übrigens auf der Maschine. Dieser Punkt gehört also nicht *LogWerk* allein, und ich verkaufe hier keinen Vorteil, den es nicht hat.

## Was LogWerk ist – und was nicht

*LogWerk* ist eine einzelne HTML-Seite. Drei ES6-Module, kein Backend, keine Datenbank, kein Build-Step. Du ziehst deine Logdatei in die Dropzone, das Parsing passiert komplett im Browser und in Häppchen, damit auch ein fettes File die Oberfläche nicht einfriert. Als Presets kommen Nginx/Apache Combined (Default), Apache Common und ein eigenes Custom-RegEx-Muster mit.

Was es nicht ist, ist ein Echtzeit-Monitor. Es ersetzt *GoAccess* nicht, wenn du ein Live-Dashboard mit WebSocket-Updates brauchst. Es ist für den Blick zurück gedacht, nicht für die Dauerüberwachung.

![](https://t01.li/content/images/2026/07/logwerk-gui.webp)

Das LogWerk Dashboard

## Der eigentliche Grund – wer crawlt hier überhaupt

Hier wird es für alle interessant, die sich mit GEO und SEO beschäftigen. *LogWerk* erkennt 60 benannte Bot-Signaturen und sortiert sie nach Anbieter und Zweck – Such-Indexer, SEO-Tools, Social-Media-Previews, Fediverse-Crawler, Security-Scanner. Alles, was durchs Raster fällt, aber nach Bot riecht, fängt ein generischer Fallback ab. Der Teil, der mich getrieben hat, sind primär die KI-Crawler.

GPTBot und ChatGPT-User von OpenAI, ClaudeBot von Anthropic, PerplexityBot, Amazonbot, der Meta-ExternalAgent – die tauchen in deinem Access-Log auf, lange bevor irgendein Dashboard dir davon erzählt. Die Google Search Console zeigt dir das nicht. Wer wissen will, ob und wie oft die KI-Crawler die eigenen Inhalte abgreifen, muss ins rohe Log. Filter auf „Bots Only“, Dropdown auf den konkreten Bot, fertig.

![](https://t01.li/content/images/2026/07/logwerk-bot-listing.webp)

LogWerk Bot-Listing

Dass ein KI-Crawler deine Seite liest, heißt aber noch lange nicht, dass daraus [etwas zurückkommt](https://t01.li/geo-seo/geo-citations-bringen-keine-conversions/) und das Log macht diese Ernüchterung schnell sichtbar. Trotzdem ist es die ehrlichste Datenquelle, die du hast – näher als die server-eigenen Logs geht nicht.

Dazu kommen ein paar Dinge, die den Alltag angenehm machen. Offline-Geo-IP-Badges zeigen dir pro Request das Herkunftsland, ohne dass eine Anfrage rausgeht. Eine Session-Rekonstruktion gruppiert Requests per Fingerprint aus IP und User-Agent in chronologische Timelines, mit einer halben Stunde Inaktivität als Trennlinie. Filtern und suchen kannst du nach IP, Pfad, Status, Referer oder User-Agent, und das gefilterte Set exportierst du als CSV. Weil das letzte Log in der IndexedDB landet, ist es nach einem Reload einfach wieder da. Die Oberfläche spricht sechs Sprachen, umschaltbar zur Laufzeit.

Wie repräsentativ diese Bot-Liste ist, sehe ich an meinen eigenen Logs. Die allermeisten Signaturen, die *LogWerk* kennt, tauchen auch in diesem Blog auf – KI-Crawler, SEO-Spider, Fediverse-Bots, quer durch. Warum ein überschaubarer Blog aus der DACH-Ecke von diesem ganzen Zoo abgegrast wird, woher die alle kommen und was sie davon haben, weiß ich bis heute nicht. Sie sind eben so da und schauen gelegentlich mal rein. Wobei der OAI-SearchBot hier mit Abstand am fleißigsten ist.

![](https://t01.li/content/images/2026/07/logwerk-detailansicht.webp)

LogWerk Detailansicht

## Wie du es startest – die eine Hürde

Ganz ohne Reibung geht es nicht, und das sage ich lieber vorher. Moderne Browser blocken das Laden lokaler JS-Module über das `file://`\-Protokoll, eine CORS-Sicherheitsregel. Es gibt zwei Wege drumherum.

Der saubere Weg ist ein lokaler Static-Server. `python3 -m http.server 8000` im Projektordner, dann `localhost:8000` im Browser – `npx serve` oder `php -S` tun es genauso.

Der schnelle Weg ist Safari-spezifisch. Entwickler-Features aktivieren, unter „Entwickeln“ die lokalen Dateibeschränkungen deaktivieren, `index.html` doppelklicken. Wer stattdessen Chrome ohne Server aufmacht, rennt allersings gegen die Wand.

Zugegeben: Das ist die eine Stelle, an der „einfach im Browser öffnen“ nicht ganz korrekt ist.

## Ehrlich unfertig

Version 1.2, noch nicht fertig abgehangen, und eigentlich müsste die Versionsnummer ehrlicherweise aktuell noch eine 0 anstatt einer 1 davor haben. Aber da ich sonst jeden Hersteller-Claim sportlich seziere, mache ich das beim eigenen Tool auch. Im README steht „offline-first“, und das braucht eine Einordnung. Deine Log-Daten verlassen den Browser nicht, das stimmt und ist der Kern. Tailwind, Chart.js und die Fonts kommen aber per CDN, für den ersten Load brauchst du also Internet. „Lokal“ ja, „komplett ohne Netz“ nein.

An der einen oder anderen Stelle wird außerdem noch eine Ungereimtheit auftauchen. Ist mir bewusst, ist v1.2, und ausbaufähig ist das Ding sowieso. Es rennt für meinen Geschmack schnell, aber das ist ein Erfahrungswert, keine gebenchte Zahl.

### Nimm es, tritt dagegen

Das Teil ist MIT-lizenziert und liegt offen im [Repo](https://github.com/abbottis/logwerk?ref=t01.li). Wenn du eine `access.log` schnell auswerten willst, ohne dafür Infrastruktur anzufassen, nimm es. Und wenn dir etwas auffällt – es wird dir etwas auffallen – dann öffne ein Issue auf Github, statt es für dich zu behalten. Genau dafür ist es öffentlich.

### Hot Take

Das schlankeste Tool gewinnt keinen Funktionsvergleich gegen *GoAccess*. Aber es ist das, das ich tatsächlich öffne, wenn ich in zwei Minuten wissen will, wer da crawlt – und benutzt schlägt mächtig.

[GitHub - abbottis/logwerk: LogWerk is a lightweight, offline-first server log analyzer dashboard that runs entirely in your web browser.LogWerk is a lightweight, offline-first server log analyzer dashboard that runs entirely in your web browser. - abbottis/logwerk![](https://t01.li/content/images/icon/favicon-1bab281a-ccbc-46cc-87f3-43868f36bc1a.svg)GitHubabbottis![](https://t01.li/content/images/thumbnail/logwerk-1fa1e579-f5e8-4ae0-87de-a5e1b4b2c454)](https://github.com/abbottis/logwerk?ref=t01.li)