ccproxy.utils.simple_request_logger¶
ccproxy.utils.simple_request_logger
¶
Simple request logging utility for content logging across all service layers.
should_log_requests
¶
Check if request logging is enabled via environment variable.
Returns:
Type | Description |
---|---|
bool
|
True if CCPROXY_LOG_REQUESTS is set to 'true' (case-insensitive) |
Source code in ccproxy/utils/simple_request_logger.py
get_request_log_dir
¶
Get the request log directory from environment variable.
Returns:
Type | Description |
---|---|
Path | None
|
Path object if CCPROXY_REQUEST_LOG_DIR is set and valid, None otherwise |
Source code in ccproxy/utils/simple_request_logger.py
get_timestamp_prefix
¶
Generate timestamp prefix in YYYYMMDDhhmmss format.
Returns:
Type | Description |
---|---|
str
|
Timestamp string in YYYYMMDDhhmmss format (UTC) |
write_request_log
async
¶
Write request/response data to JSON file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request_id
|
str
|
Unique request identifier |
required |
log_type
|
str
|
Type of log (e.g., 'middleware_request', 'upstream_response') |
required |
data
|
dict[str, Any]
|
Data to log as JSON |
required |
timestamp
|
str | None
|
Optional timestamp prefix (defaults to current time) |
None
|
Source code in ccproxy/utils/simple_request_logger.py
write_streaming_log
async
¶
Write streaming data to raw file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request_id
|
str
|
Unique request identifier |
required |
log_type
|
str
|
Type of log (e.g., 'middleware_streaming', 'upstream_streaming') |
required |
data
|
bytes
|
Raw bytes to log |
required |
timestamp
|
str | None
|
Optional timestamp prefix (defaults to current time) |
None
|
Source code in ccproxy/utils/simple_request_logger.py
append_streaming_log
async
¶
Append streaming data using batching for performance.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request_id
|
str
|
Unique request identifier |
required |
log_type
|
str
|
Type of log (e.g., 'middleware_streaming', 'upstream_streaming') |
required |
data
|
bytes
|
Raw bytes to append |
required |
timestamp
|
str | None
|
Optional timestamp prefix (defaults to current time) |
None
|
Source code in ccproxy/utils/simple_request_logger.py
flush_all_streaming_batches
async
¶
Flush all pending streaming batches. Call this on shutdown.