Releases: nullswan/bpfsnitch
Releases · nullswan/bpfsnitch
v0.1.0
Changelog
New Features
-
Performance Improvements:
- Replaced perf event arrays with a ring buffer for event handling (#3)
- Enabled resource limits and requests in deployments
-
Profiling Support:
- Added profiling support with Pyroscope (#2)
-
Metrics:
- Added custom prefix for Prometheus metrics
- Enhanced network event processing with subnet
-
Grafana Dashboards:
- Added Grafana dashboard
-
Kubernetes Mode:
- Removed Kubernetes mode flag and associated logic
- Refactored ShaResolver to handle pod expiration
- Added pod deletion handling and related metrics
Commits
- 827eb35 fix(bpf): correct order of element assignments in trace_tcp and trace_udp
- 28b097a feat(deployments/grafana): enhance network traffic visualization and add new panels
- d778c65 test(pkg/network): add t.Parallel in TestIntToSubnet
- 03f98c2 style(pkg/network): add nolint comments in IntToSubnet
- c54b9a0 feat(pkg/network): enhance IntToSubnet to zero out host portion
- c2123b2 docs(internal/workload): add comments to sha_resolver methods
- 49c4a5e refactor(internal/app): remove kubernetes mode flag and related logic
- 2ae805f feat(internal/workload): refactor ShaResolver to handle pod expiration
- 366953e feat(internal/app): add pod deletion handling and related metrics
- 7a4575f style(pkg/lru): update ForEach test functions to ignore unused variables
- 09313fc feat(pkg/lru): add Remove and ForEach methods to LRU cache
- 57b5229 docs: update performance section in README
- c856543 feat(internal): add profiling support with pyroscope (#2)
- e68d692 style(internal/metrics): remove extra newline
- 748240c chore(deps): clean up go.mod and go.sum
- f039344 refactor(internal): rename container to pod
- 3750040 feat(internal/bpf): enhance NetworkEvent with enums for direction and protocol
- 8f6749f feat(internal): enhance network event processing with subnet and improve metrics organization
- 0984bf6 feat(pkg/network): add IntToSubnet function and SubnetMask24 constant
- 048021b feat(internal/bpf): add debug log level check
- 8d7dc63 feat(bpf): add constants for direction and protocol
- a731f74 chore(build): update Docker image tag for multiarch build
- e553816 feat(deployments): enable resource limits and requests
- d700054 feat(bpf): replace perf event arrays with ring buffer for event handling (#3)
- 48d8d40 chore: add .dockerignore file
- 266ab28 perf(bpf): optimize syscall event logging with debug level check
- da531af feat(internal/metrics): add custom prefix for Prometheus metrics
- 987ee26 wip(deployments/grafana): add Grafana dashboard configuration for Bpfsnitch Metrics
- c2eb55e chore: update codeowners with reviewers
- 7b90585 docs(perf): remove duplicate title
- f083660 fix: remove dupe docs paragraph about perf (#1)
- 1952ac2 docs: add performance section to README
v0.0.1
Changelog
- c7384d9 perf(internal/bpf): increase perfReaderBufSz for better performance
- 26042ee feat(internal/workload): add ErrCgroupIDNotContainer error
- f683363 feat(workload): improve container resolution with better error handling
- 1336d17 feat(app): add logging for event processor and container resolution
- a40d00a feat(build): enhance Docker build and push process
- 93dcf3f feat(internal/app): add defaultPrometheusPort constant
v0.0.0-rc3
Changelog
- eba4705 feat(internal): make Prometheus port configurable
v0.0.0-rc2
v0.0.0-rc1
Changelog
- ab4d98e feat(deployments): add containerd socket and library object files
v0.0.0-rc0
Changelog
- 6a11e66 ci(workflows): update Docker actions versions and fix DockerHub login
- 88b9052 docs: add SECURITY policy
- d18cacc docs: add LICENSE file
- 339adae docs: add CONTRIBUTING guidelines
- f1cc501 docs: add CODE_OF_CONDUCT
- 765a019 chore(ci): rename workflow to 'release'
- cc14115 fix(deployments): correct architecture and cleanup mount commands in daemonset
- 133bb04 ci(workflows): add id to Docker meta step
- 4ddac6e chore(repo): add .gitattributes to mark bpf/vmlinux.h as vendored
- 9394c72 feat(ci): add docker push job
- 07d5f3f test(network): add tests for network conversion utilities
- 3db4904 feat(network): add IP and network byte order conversion utilities
- f4d2b72 feat(workload): add container resolution logic
- 1b028f9 feat(sig): add signal handling setup for graceful shutdown
- 88844e6 feat(profile): add pprof setup utility
- 7798951 feat(bpf): add event processing functions
- d5f78fd refactor(bpf): rename BpfEvent to Event and refactor ConsumeEvents
- 66359f4 feat(app): create Run function with main application logic
- ac5133a refactor(bpfsnitch): move run logic to internal/app
- 1cbf8b1 docs: update contact section with markdown links
- 77e65cf feat(bpfsnitch): add Kprobe attacher
- cfc880e feat(bpfsnitch): add BPF event consumer
- b7828bb chore(bpfsnitch): update Go module dependencies
- c379f27 feat(bpfsnitch): add UDP BPF tracers
- 9b5695c feat(bpfsnitch): add TCP BPF tracers
- 0110229 docs(bpfsnitch): add initial README
- f51f26d feat(internal/metrics): add network and DNS metrics counters
- 647e757 chore(internal/bpf): add comment to suppress linter warning
- 0b750f6 fix(internal/bpf): correct naming in tracepoint attacher
- 14791e5 feat(internal/bpf): add NetworkEvent struct and BpfEvent interface
- 4e06915 feat(internal/bpf): extend KBContext with network event reader and KPs
- 6a17f8d feat(cmd/bpfsnitch): enhance event handling with network events
- 870d872 feat(bpf/main): include tracepoint and kprobe handlers, add is_local_ip function
- 2365411 feat(bpf/core): add pragma once and is_local_ip function
- 8ddb153 style(internal/metrics): add nolint for gosec warning
- 929c36f refactor(internal/bpf): remove empty var block and use constants
- 3fa772b refactor(internal/bpf): extract perf reader buffer size to constant
- 39de40e test(bpf, lru): add parallel execution for tests
- 19b77f4 chore: add autogenerated file headers
- 7b1c236 style: rename CgroupId to CgroupID for consistency
- 0e7283b refactor: replace fmt.Errorf with errors.New
- 31a7e94 chore(ci): update golangci-lint version in GitHub workflow
- e29a8b9 refactor(internal/bpf): update tests for new SyscallToId and IdToSyscall names
- 4ccd160 refactor(internal/bpf): adjust to new SyscallToId and IdToSyscall names
- 266d347 refactor(internal/bpf): adjust to new SyscallToId and IdToSyscall names
- 23cb07f refactor(internal/bpf): rename WhitelistedSyscallsMap to IdToSyscall in event.go
- 5f974f8 refactor(internal/bpf): rename WhitelistedSyscalls to SyscallToId for arm64 arch
- 1de1bbe refactor(internal/bpf): rename WhitelistedSyscalls to SyscallToId for arm arch
- 6894256 refactor(internal/bpf): rename WhitelistedSyscalls to SyscallToId for amd64 arch
- 863be15 refactor(internal/bpf): rename WhitelistedSyscalls to SyscallToId for 386 arch
- 65a2aec feat(cmd/cli): add pprof support and improve Kubernetes mode handling
- 2f2a7a8 refactor(cmd/bpfsnitch): use LRU cache for banned cgroup IDs
- 0f80fd3 chore: update gitignore
- 2190913 feat(pkg/lru): implement and test LRU cache
- 9e9500d refactor(bpf): remove kprobe attacher
- e778c15 feat(workload): add runtime detection and container SHA resolution
- 52d784d feat(metrics): register syscall counter with container label
- e36aefe chore(bpf): update import path in whitelist attacher
- 81be83d feat(bpf): implement tracepoint attacher
- 831c39b feat(bpf): update event struct to include pid instead of user_id
- be8d681 refactor(bpf): update attacher to support tracepoints
- 14cd166 docs(bpf): update TODO to reflect build target change
- 3e24a0e chore: update go.sum with new dependencies
- 07d04be chore: update module name and dependencies
- 2763d58 feat(cmd/bpfsnitch): add Kubernetes mode and integrate LRU cache
- 69e42c9 refactor(bpf): switch from kprobe to tracepoint for syscall tracing
- 5612c09 feat(bpf): replace user_id with pid in syscall_event struct
- 083f309 feat(bpf): add current directory include path to build script
- f69e3a7 chore: update gitignore for dev directory
- 8abda47 feat(cmd): core logic
- 36b49cc feat: tooling
- b66da22 feat(deployments): add kube & dockerfile
- 325f849 feat(internal): add logger
- 075e753 feat(internal): add metrics server
- b8385a5 feat(bpf): attacher & runtime
- 7ad8f5e feat(ci): boilerplate
- c5671ca feat(internal/bpf): syscall per arch