Documentation
Get started in minutes, then go deeper with the query language.
Quick start
Create a client and a site, import logs and open a report. The desktop app does the same with a few clicks.
octopuson-log client add "Acme"
octopuson-log site add acme.com --client "Acme"
octopuson-log import acme.com /var/log/nginx/
octopuson-log overview acme.com --period last30d
octopuson-log query acme.com --template url-summary -o urls.xlsx
octopuson-log robots acme.comQuery language
Every report is a query: conditions, then optional grouping, metrics, sorting and a limit.
Examples
bot:googlebot* verification:verified status:4xx date:last30d group:urlErrors verified Googlebot hit in the last 30 daysbot_category:ai-* group:bot,day metric:hitsDaily activity per AI crawlerreferer_type:ai -bot:* group:url,referer_hostPages visited from AI assistantsverification:spoofed group:bot,as_org,countryWhere fake bots come fromgroup:url metric:last_status,days_since_last,googlebot_hitsCrawl recency per URL
Fields
dateipmethodurlpathdirectoryparamsstatusbytesresponse_msuarefererhostprotocolbotbot_categoryverificationcontent_typereferer_hostreferer_typecountryasnas_org
Metrics
hitsbytesavg_bytesavg_msmax_msp95_msunique_urlsunique_ipsfirst_seenlast_seendays_since_lastlast_statusstatus_codesunique_statusesinconsistenterrorshits_1xx…hits_5xxco2_mgbot_hitssearch_hitsai_hitsgooglebot_hitsbingbot_hitsyandex_hits