Commit Graph

18 Commits

Author SHA1 Message Date
f018f0e1f6 fix: JsonSockLogMaxHeaders counts configured headers by position
The limit now applies to the position in the configured list, not to the
number of headers actually present in the request. This matches the
documented behavior: headers beyond position N are never logged regardless
of their presence.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-05 15:29:53 +01:00
98e413be68 config: extend default headers list and raise max to 25
- CONFIG: Add Sec-CH-UA, Sec-CH-UA-Mobile, Sec-CH-UA-Platform,
  Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site, Accept,
  Accept-Language, Accept-Encoding to default JsonSockLogHeaders
- CONFIG: Raise DEFAULT_MAX_HEADERS from 10 to 25
- DOC: Update architecture.yml value_example and conf/mod_reqin_log.conf

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-05 15:14:28 +01:00
643557a2e7 fix: skip subrequests and internal redirects in post_read_request
- 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>
2026-03-05 15:11:56 +01:00
54d210978f fix: timestamp uses r->request_time; remove unparsed_uri, fragment from architecture
- 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>
2026-03-05 14:42:00 +01:00
ae933fcf5a release: version 1.0.14 - Harmonize JSON construction
- REFACTOR: All JSON fields now follow same pattern (field ends with comma)
- FIX: Duplicate comma between query and host fields
- FIX: Buffer corruption in dynbuf_append (copy null terminator)
- CLEANUP: Remove unnecessary comments, simplify code structure

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-02 23:50:39 +01:00
887318ba89 release: version 1.0.13 - Fix duplicate comma in JSON output
- FIX: Remove trailing comma after query field (was causing ,, before host)
- FIX: Copy null terminator during buffer reallocation in dynbuf_append
- PACKAGING: Config file marked as %config(noreplace)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-02 23:48:38 +01:00
64c3e4acd8 release: version 1.0.12 - Fix buffer corruption in dynbuf_append
- FIX: Copy null terminator during buffer reallocation (db->len + 1)
- This fixes JSON corruption that caused double commas in output

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-02 23:46:52 +01:00
dce1c813fc release: version 1.0.11 - Preserve config file on upgrade
- PACKAGING: Mark mod_reqin_log.conf as %config(noreplace)
- User modifications to config file are now preserved during RPM upgrades

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-02 23:45:00 +01:00
62b174c1a2 release: version 1.0.10 - Fix JSON serialization and remove unused fields
- FIX: Correct JSON string length parameters for query field (8→9)
- FIX: Add null-termination after buffer reallocation in dynbuf_append
- CHANGE: Remove unparsed_uri, fragment, and content_length fields
- TEST: Update unit tests to match dynbuf_append fix

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-02 23:41:38 +01:00
e606e7760f CHANGE: Replace req_id with query and fragment fields
- 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>
2026-03-02 21:07:22 +01:00
8a8ee8c6b1 FEATURE: Add missing JSON fields and fix socket type per architecture.yml
- 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>
2026-03-02 20:59:38 +01:00
17d7671380 release: version 1.0.7
- JsonSockLogLevel directive for configurable log levels (DEBUG, INFO, WARNING, ERROR, EMERG)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-01 02:31:43 +01:00
3d2e4f8e70 feature: add JsonSockLogLevel directive for configurable log levels
- New directive: JsonSockLogLevel (DEBUG, INFO, WARNING, ERROR, EMERG)
- Default level: WARNING
- Controls verbosity of module logs in Apache error_log
- DEBUG: Log header skipping, buffer truncation, size limits
- Updates conf/mod_reqin_log.conf with example configuration

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-01 02:31:16 +01:00
c61774f8ec conf: change socket path to /var/run/logcorrelator/http.socket
- Update all documentation and configuration files
- Update test cases

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-01 02:14:31 +01:00
395af61497 release: version 1.0.6
- Default socket path changed to /var/run/logcorrelator/http.sock
- Docker build now uses cache for faster local builds

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-01 01:52:50 +01:00
baf8ed801b build: use spec_version macro in RPM spec file
- Define %global spec_version before Version field
- Allows RPM 4.18+ to manage version via macro
- Simplifies version management in spec file

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-01 01:44:46 +01:00
c228865a48 release: version 1.0.4 - Build system fixes and cleanup
- Fix RPM package paths in Dockerfile.package (el8, el9, el10 directories)
- Fix Makefile RPM extraction with separate volume mounts
- Remove unused scripts (build.sh, test.sh)
- Remove Python integration tests (not automated in CI)
- Update README.md and architecture.yml for RPM-only packaging
- Remove DEB and el7 references

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-01 01:03:48 +01:00
8b381c7feb build: migrate RPM packaging from fpm to rpmbuild with .spec file
- Replace fpm with rpmbuild for standard RPM packaging
- Add mod_reqin_log.spec file with Version, %install, %files, %changelog
- Use Rocky Linux 9 as package-builder base image
- Extract version automatically from .spec file
- Remove CHANGELOG file (changelog now in .spec)
- Build RPMs for el8, el9, el10 distributions

Verified RPM metadata:
  Name: mod_reqin_log
  Version: 1.0.2
  Release: 1.el8/el9/el10
  License: Apache-2.0

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-01 00:12:22 +01:00