Repository navigation
v3.1.0
Release v3.1.0
Release Notes
This release modernizes DTail's architecture with improved signal handling, enhanced regex support, and streamlined command-line interfaces. Key improvements include better connection management, more robust error handling, and simplified deployment workflows.
Breaking Changes
drun command has been removed in this release. Users should migrate to alternative remote execution tools or use DTail's other commands for log analysis workflows.
New Features
Enhanced Regex Support
- New regex package: Completely rewritten regular expression handling with better performance and reliability
- Regex inversion: Added
--invertflag to grep and dtail commands for negative matching (show lines that DON'T match the pattern) - Improved pattern serialization: Better handling of complex regex patterns across client-server communication
Improved Signal Handling
- Graceful shutdowns: Enhanced interrupt signal handling provides cleaner connection termination
- Better process management: Server now properly kills subprocesses when operations are cancelled
- Connection stats on demand: Press Ctrl+C once to see connection statistics without terminating
Improvements
Command-Line Interface
- Simplified flag parsing: Consolidated argument handling across all commands reduces complexity
- Alias support: Added
--grepas an alias for--regexfor more intuitive usage - Better error messages: More descriptive error output helps troubleshoot connection and configuration issues
Performance & Reliability
- Connection throttling fixes: Resolved race conditions in connection management for better stability
- Memory optimization: Reduced memory usage in mapreduce operations and file handling
- Enhanced SSH authentication: Added relaxed auth mode for development environments (use
--relaxedAuthflag)
Server Management
- Improved logging: Better debug output and more informative log messages
- Protocol updates: Enhanced client-server communication protocol for better reliability
- Background job management: More robust handling of long-running operations
Bug Fixes
- Fixed silent logging issues that could cause missed log entries
- Resolved connection throttling race conditions
- Improved process termination to prevent orphaned subprocesses
- Better handling of SSH key authentication edge cases
- Fixed regex compilation errors that could crash the client
Developer Experience
Code Organization
- Structured packages: Moved internal dependencies to
internal/directory following Go best practices - Command separation: All CLI commands now properly organized in
cmd/directory - Better testing: Added comprehensive unit tests for the new regex package
Configuration
- SSH key support: Enhanced support for custom SSH private keys via
--keyflag - Flexible discovery: Improved server discovery mechanisms for dynamic environments
- Timeout controls: Better timeout handling for various operations
Migration Guide
If you were using drun for remote command execution:
- Consider using standard SSH tools for simple command execution
- Use
dmapfor log analysis and aggregation tasks - Leverage
dtailwith the new regex features for real-time log monitoring
All other commands maintain backward compatibility with existing configurations and scripts.
This release focuses on stability, performance, and user experience improvements while maintaining DTail's core functionality for distributed log analysis and monitoring.