Files
mod_reqin_log/Dockerfile.test-socket
Jacquin Antoine 66549acf5c Initial commit: mod_reqin_log Apache module
Features:
- JSON logging of HTTP requests to Unix domain socket
- Configurable HTTP headers logging (flat JSON structure)
- Header value truncation and count limits
- Automatic reconnect on socket disconnection
- Error reporting with throttling

Configuration directives:
- JsonSockLogEnabled: Enable/disable logging
- JsonSockLogSocket: Unix socket path
- JsonSockLogHeaders: List of headers to log
- JsonSockLogMaxHeaders: Maximum headers to log
- JsonSockLogMaxHeaderValueLen: Max header value length
- JsonSockLogReconnectInterval: Reconnect delay
- JsonSockLogErrorReportInterval: Error log throttle

Includes:
- Module source code (src/)
- Unit and integration tests (tests/, scripts/)
- Documentation (README.md, architecture.yml)
- Build configuration (CMakeLists.txt, Makefile)
- Packaging (deb/rpm)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 13:55:07 +01:00

41 lines
855 B
Docker

# Dockerfile for running Unix socket integration tests
FROM rockylinux:8
# Install dependencies
RUN dnf install -y epel-release && \
dnf install -y \
gcc \
make \
httpd \
httpd-devel \
apr-devel \
apr-util-devel \
python3 \
curl \
redhat-rpm-config \
&& dnf clean all
# Copy module source
COPY src/ src/
COPY Makefile Makefile
COPY conf/ conf/
# Build the module
RUN make APXS=/usr/bin/apxs
# Copy test scripts
COPY scripts/test_unix_socket.sh /test_unix_socket.sh
COPY scripts/socket_listener.py /build/scripts/socket_listener.py
RUN chmod +x /test_unix_socket.sh
RUN mkdir -p /build/scripts
# Create document root
RUN mkdir -p /var/www/html
RUN echo "<html><body><h1>Test</h1></body></html>" > /var/www/html/index.html
# Set working directory
WORKDIR /build
# Run the test
CMD ["/test_unix_socket.sh"]