mirror of https://github.com/synctv-org/synctv
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
## Summary - add structured HTTP and gRPC access logs with request correlation, status-aware levels, response bytes, and complete body lifecycle timing - route diagnostic and access events through independently configurable text or JSON outputs with non-blocking writers and dropped-line accounting - honor the configured IANA timezone across text, JSON, diagnostic, and access logs with DST-aware RFC 3339 offsets - keep HTTP metric labels bounded while logging concrete unmatched paths without query strings - reduce local development noise by defaulting global logs to info while retaining component debug logs ## Behavior - HTTP 2xx and 3xx complete at info, 4xx at warn, and 5xx or body failures at error - slow handlers are raised to warn; ordinary client response cancellation remains debug - gRPC completion waits for final trailers and records the canonical gRPC status - request IDs are validated, propagated in responses, and included in mapped gRPC errors - header latency and full response lifecycle latency are reported separately - log timestamps use the configured time.timezone and include a numeric UTC offset ## Testing - cargo test -p synctv-api-common transport_access_log --lib - cargo test -p synctv-core logging::tests --lib - cargo test -p synctv resource_options::tests --lib - cargo clippy for affected crates and all targets with warnings denied - cargo check --workspace --all-targets - cargo fmt --all -- --check - git diff --check - local server smoke tests for request completion, request ID propagation, byte counts, query omission, and Asia/Shanghai timestamps in diagnostic and access logs |
1 month ago | |
|---|---|---|
| .. | ||
| src | 1 month ago | |
| Cargo.toml | 2 months ago | |