Add a new JSON field 'client_headers' containing all HTTP header names
received from the client (r->headers_in), in original order and with
original case preserved. Useful for browser/bot fingerprinting since
header order is client-specific.
Example: "client_headers":["Host","User-Agent","Accept"]
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- FIX: Guard post_read_request hook with r->main and r->prev checks to
avoid logging duplicate lines for subrequests and internal redirects
- DOC: Document subrequest/redirect filtering in architecture.yml
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- FIX: timestamp JSON field now uses r->request_time (set at request reception
by Apache) instead of apr_time_now() called during log processing
- DOC: remove unparsed_uri and fragment fields from architecture.yml data model
(these fields are not logged by the module)
- DOC: update example_full and timestamp description in architecture.yml
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Remove req_id field (r->log_id) from JSON output
- Add query field (r->parsed_uri.query) - query string without '?'
- Add fragment field (r->parsed_uri.fragment) - fragment without '#'
- Update architecture.yml documentation
- Bump version to 1.0.9
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
- Add req_id, scheme, unparsed_uri, args, keepalives, content_length fields
- Change socket type from SOCK_STREAM to SOCK_DGRAM
- Update architecture.yml documentation with new fields
- Bump version to 1.0.8 with changelog entry
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
- Remove DEB and el7 references (RPM only: el8, el9, el10)
- Remove Python integration tests from documentation (not automated in CI)
- Add file inventory in architecture.yml (source, packaging, tests)
- Update CI verify jobs to check RPM metadata with rpm -qi
- Organize RPM packages by distribution in dist/rpm/{el8,el9,el10}/
- Add security and RPM packaging features to README
- Split Requirements into Runtime and Packaging sections
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
- Replace GitHub Actions with GitLab CI using Docker-in-Docker
- Build 3 RPMs (el7, el8, el9) + 1 DEB from Dockerfile.package
- Add verify jobs for each target distribution
- Remove obsolete files:
- Dockerfile, Dockerfile.test-socket (replaced by Dockerfile.package)
- scripts/socket_consumer.py, scripts/socket_listener.py
- scripts/test_unix_socket.sh, scripts/run_integration_tests.sh
- Update README.md with new package targets
- Update architecture.yml for GitLab CI workflow
Breaks: Single RPM no longer supported (glibc incompatibility)
Replaced by: Distribution-specific RPMs (el7, el8, el9)
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>