CodeForPhilly / CodeForPhilly/clean-and-green-philly

Task: Refactor Logging and Debug Output Implementation

Open
#1,257 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
50
Forks
92
PR merge metrics
No merged PRs in 30d

Description

## Describe the task
Refactor the inconsistent logging and debugging statements throughout the `data/src` pipeline to create a unified, configurable, and efficient logging system. Currently, a mix of `logging` calls and `print` statements are scattered across the codebase with inconsistent implementation, making terminal output verbose and difficult to manage during pipeline execution. While `config.py` contains some logging configuration functionality, it is not properly integrated throughout the pipeline. This task involves consolidating all output statements into a standardized logging system that is both parsimonious for normal operation and helpful for debugging, with particular attention to managing verbose geometry debugging output.

## Acceptance Criteria
- [ ] Audit all logging, print, and debug statements in `data/src` directory and subdirectories
- [ ] Replace all `print` statements with appropriate `logging` calls using standard log levels
- [ ] Implement consistent logging configuration that properly utilizes the existing `config.py` logging functionality
- [ ] Remove or properly gate verbose debug output that clutters terminal during normal pipeline execution
- [ ] Verify that logging performance does not negatively impact pipeline execution time
- [ ] Update relevant documentation to reflect the new logging patterns, configuration options, and best practices

## Additional context
- Preserve existing `config.py` logging functionality where possible, but refactor as needed for consistency
- Pay special attention to geometry processing modules where debug output can become extremely verbose
- Consider both development and production use cases when designing the logging system
- Ensure the solution is maintainable and follows Python logging best practices

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.