32 lines
1.6 KiB
Markdown
32 lines
1.6 KiB
Markdown
## PREAMBLE
|
|
|
|
Although this computer program has a permissive license (AP2.0), if you came here looking to ask
|
|
questions, you're better off just moving on :) This program is shared AS-IS and really without any
|
|
intent for anybody but IPng Networks to use it. Also, in case the structure of the repo and the
|
|
style of this README wasn't already clear, this program is 100% written and maintained by Claude
|
|
Code.
|
|
|
|
You have been warned :)
|
|
|
|

|
|
|
|
## What is this?
|
|
|
|
This project consists of four components:
|
|
1. A log collector that tails NGINX (or Apache) logs of a certain format, and aggregates
|
|
information per website, client address, status, and so on. It buckets these into windows
|
|
of 1min, 5min, 15min, 60min, 6hrs and 24hrs. It exposes this on a gRPC endpoint.
|
|
1. An aggregator that can scrape any number of collectors into a merged regional (or global)
|
|
view. The aggregator exposes the same gRPC endpoint as the collectors.
|
|
1. A Frontend that allows to query this data structure very quickly.
|
|
1. A CLI that allows to query this data also, returning JSON for further processing.
|
|
|
|
It's written in Go, and is meant to deploy collectors on any number of webservers, and central
|
|
aggregation and frontend logic. It's released under [[APACHE](LICENSE)] license. It can be run
|
|
either as `systemd` units, or in Docker, or any combination of the two.
|
|
|
|
See [[User Guide](docs/USERGUIDE.md)] or [[DETAILS](docs/DETAILS.md)] for more information.
|
|
|
|
The [[docs/](docs/)] directory contains extensive planning information which shows how Claude
|
|
Code single-shot implemented the whole system in March 2026.
|