PyTraceX is a lightweight and extensible Python library designed for execution flow tracing, audit logging, correlation ID tracking, ML pipeline monitoring, and file I/O tracing. It provides a seamless way to capture, analyze, and manage system interactions, all while maintaining a minimal footprint and high configurability.
-
Function Execution Tracing
Capture function calls, execution time, and input arguments automatically. -
Audit Logging
Securely log critical operations with tamper-proof signatures. -
Correlation ID Tracking
Associate correlation IDs with requests to enable distributed tracing across microservices. -
ML Pipeline Monitoring
Track data transformations, preprocessing, and model training workflows. -
File I/O Tracing
Monitor file operations such as reading, writing, and closing files with built-in tracking. -
Real-Time Execution Monitoring (Optional)
A web-based dashboard for interactive monitoring and visualization. -
Configurable and Extensible
Supports in-memory storage by default, with the option to integrate databases or other external systems.
-
Minimal Dependencies
Uses only standard Python libraries by default, ensuring lightweight deployment. -
Plug-and-Play Decorators
Easily add tracing, logging, and monitoring to existing functions with simple annotations. -
Production-Ready
Designed for both local development and large-scale distributed systems. -
Security & Compliance
Includes tamper-proof event logging and configurable PII masking for data protection.
PyTraceX is highly configurable, allowing users to define:
- Custom logging formats and verbosity.
- Secure hashing mechanisms for audit logs.
- PII masking rules to anonymize sensitive data.
- Storage backends for trace event persistence.
All configurations are easily adjustable to fit different use cases.
For those who require real-time trace visibility, PyTraceX offers an optional web-based dashboard.
This allows users to:
- View recorded function calls and events.
- Monitor live execution logs.
- Filter and search trace events dynamically.
PyTraceX is designed for a wide range of applications, including:
- Debugging complex execution flows in microservices and distributed systems.
- Enhancing observability in data pipelines and machine learning workflows.
- Ensuring compliance with secure logging for sensitive operations.
- Tracking file interactions in automated workflows and backend systems.
Its modular design makes it adaptable to both small-scale scripts and enterprise-level applications.
PyTraceX is released under the MIT License.
Users are free to modify, distribute, and use the library in both personal and commercial projects.
We welcome contributions to improve and expand PyTraceX.
- Report issues to help identify bugs and areas for improvement.
- Suggest features that could enhance usability and functionality.
- Submit pull requests to contribute directly to the project.
Your feedback and participation help make PyTraceX better for everyone!
For any inquiries, support, or feature requests, please reach out through the issues or discussion parts of the repository.