Add warning logs when approaching limits (e.g., 80% of limit):
logger.warning(
f"File size {file_size} is 85% of limit {max_limit}. "
f"Consider increasing limit if conversion fails."
)
Benefits
- Proactive warning before hitting limits
- Helps with capacity planning
- Better debugging for borderline cases
Implementation Ideas
Add warning checks before each limit validation:
# In svg_document.py
if resource_limits.is_file_size_limited():
file_size = os.path.getsize(input_path)
threshold = resource_limits.max_file_size * 0.8
if file_size > threshold:
logger.warning(
f"File size {file_size} bytes is {file_size/resource_limits.max_file_size:.0%} "
f"of limit {resource_limits.max_file_size} bytes."
)
if file_size > resource_limits.max_file_size:
raise ValueError(...)
Warning Thresholds
- File size: 80% of limit
- Layer depth: 80% of limit
- Image dimensions: 90% of limit (closer to hard limit)
- Timeout: Warning at 50% elapsed, 75% elapsed
Considerations
- Warnings should respect
--loglevel setting
- Should not be too noisy (only warn once per limit type)
- Consider structured logging for machine parsing
Add warning logs when approaching limits (e.g., 80% of limit):
Benefits
Implementation Ideas
Add warning checks before each limit validation:
Warning Thresholds
Considerations
--loglevelsetting