Server Logs / API Ingest
Wenn deine Website nicht hinter Cloudflare oder Akamai läuft — z. B. weil dein eigenes nginx die Edge ist — kannst du AI-Crawler-Besuche direkt an Finseo pushen. Jedes System, das einen HTTP-POST senden kann, funktioniert: eine Server-Side-Tracking-Pipeline, ein gefiltertes nginx-Access-Log mit Cron-Job oder ein eigenes Skript. Die Verbindung findest du unter Bot Analytics → Sync → Server Logs / API → Connect. Der Dialog erzeugt dein projektgebundenes Ingest-Token (fslg_…) und zeigt Endpoint, ein NDJSON-Beispiel sowie fertige nginx- und Cron-Vorlagen zum Kopieren.
AI-Crawler wie GPTBot, ClaudeBot und PerplexityBot führen kein JavaScript aus — ein Client-Snippet kann sie nicht sehen. Bot Traffic arbeitet ausschließlich mit serverseitigen Daten, deshalb müssen die Daten aus deinen Edge- oder Server-Logs kommen.
Endpoint
Log-Zeilen-Format
Die Feldnamen sind absichtlich identisch mit dem Cloudflare-Feed — ein Exportformat funktioniert für alle Finseo-Push-Integrationen.
Antwort
received— Zeilen im BatchbotVisits— als verifizierte AI-/Search-Crawler-Requests erkannte Zeilensaved— nach Deduplizierung geschriebene Zeilen
Retries sind unkritisch: Finseo dedupliziert serverseitig über Bot + Zeitstempel + IP + Pfad. Ein doppelt gesendeter Batch erzeugt nie Doppelzählungen. Du kannst auch ungefilterte Logs senden — Nicht-Crawler-Zeilen werden verworfen und nie gespeichert — Vorfiltern hält deine Payloads aber klein.
Option A: Push aus deinem Server-Side-Tracking
Wenn du bereits ein zentrales Request-Log hast (Server-Side-Tracking, Log-Pipeline), filtere es auf die Crawler-User-Agents und poste den Batch stündlich oder täglich:Option B: gefiltertes nginx-Access-Log + Cron
Vollprotokollierung ist nicht nötig. Ein zweites, gefiltertes Log nur mit AI-Crawlern umfasst typischerweise wenige tausend Zeilen pro Tag — kein Aggregationsservice erforderlich:Limits
- Max.
16 MBpro Request-Body (64 MBdekomprimiert), max.20.000Zeilen pro Push - Rate-Limits pro IP und pro Token — Batches senden, keine Einzel-Requests
- Nur Requests verifizierter AI- und Search-Crawler werden gespeichert; alles andere wird verworfen
Testen ohne Server-Änderungen
Du willst echte Zahlen sehen, bevor irgendetwas umgebaut wird? Bot Analytics → Upload Server Logs akzeptiert rohe nginx-, Apache- und Cloudflare-Text-Logs bis 1 GB — einfach einen Tag Logs exportieren und manuell hochladen.Trennen
Klicke auf der Server-Logs-/API-Karte auf Manage → Disconnect. Das Ingest-Token wird sofort ungültig — weitere Pushes werden mit403 abgelehnt. Denk daran, auch deinen Cron-Job zu entfernen.
Troubleshooting
Antwort zeigt botVisits: 0, obwohl ich Crawler-Zeilen gesendet habe
Antwort zeigt botVisits: 0, obwohl ich Crawler-Zeilen gesendet habe
Finseo verifiziert die Crawler-Identität über die publizierten IP-Ranges der Anbieter. Wenn du die IP deines Load Balancers statt der echten Client-IP (erster Eintrag aus
X-Forwarded-For) sendest, schlägt die Verifizierung fehl und die Zeilen werden verworfen. Prüfe außerdem, ob ClientRequestUserAgent den vollständigen Original-UA-String enthält.401- oder 403-Fehler
401- oder 403-Fehler
401 bedeutet, dass der Authorization: Bearer-Header fehlt; 403 bedeutet, dass das Token ungültig ist oder über Disconnect widerrufen wurde. Kopiere das aktuelle Token aus dem Connect-Dialog.Status bleibt auf 'Awaiting first push'
Status bleibt auf 'Awaiting first push'
Der Status springt beim ersten erfolgreichen POST um — prüfe die JSON-Antwort in deinem Cron-Output. Ein
413 bedeutet, dass der Batch die Größenlimits überschritten hat; teile ihn auf.saved ist niedriger als botVisits
saved ist niedriger als botVisits
Das ist die Deduplizierung: Zeilen mit gleichem Bot, Zeitstempel, IP und Pfad — z. B. aus einem wiederholten Batch — werden nur einmal gespeichert.