- Connects to RIPE RIS Live stream to receive real-time BGP updates - Stores BGP data in SQLite database: - ASNs with first/last seen timestamps - Prefixes with IPv4/IPv6 classification - BGP announcements and withdrawals - AS-to-AS peering relationships from AS paths - Live routing table tracking active routes - HTTP server with statistics endpoints - Metrics tracking with go-metrics - Custom JSON unmarshaling to handle nested AS sets in paths - Dependency injection with uber/fx - Pure Go implementation (no CGO) - Includes streamdumper utility for debugging raw messages
25 lines
276 B
Makefile
25 lines
276 B
Makefile
export DEBUG = routewatch
|
|
|
|
.PHONY: test fmt lint build clean run
|
|
|
|
all: test
|
|
|
|
test: lint
|
|
go test -v ./...
|
|
|
|
fmt:
|
|
go fmt ./...
|
|
|
|
lint:
|
|
go vet ./...
|
|
golangci-lint run
|
|
|
|
build:
|
|
go build -o bin/routewatch cmd/routewatch/main.go
|
|
|
|
clean:
|
|
rm -rf bin/
|
|
|
|
run: build
|
|
./bin/routewatch
|