Repository navigation
v2.1.0
Release v2.1.0
Release Notes
This release introduces scheduled job capabilities and improves regex handling, enabling automated background processing and more flexible pattern matching for log analysis.
✨ New Features
Scheduled Jobs
- Automated background processing: Configure recurring MapReduce jobs that run automatically at specified time intervals
- Smart execution logic: Jobs only run when output files don't already exist, preventing duplicate processing
- Dynamic date substitution: Use variables like
$today,$yesterday,$tomorrowin file paths for date-based log processing - Flexible scheduling: Set time ranges to control when jobs execute (e.g., only during business hours)
- Secure authentication: Scheduled jobs use automatically generated secure credentials
This enables use cases like:
- Daily log aggregation and analysis
- Automated report generation
- Batch processing of historical data
- Scheduled maintenance tasks
Enhanced Regex Support
- Multi-word regex patterns: Regular expressions can now contain whitespace, making complex pattern matching more intuitive
- Improved pattern flexibility: Better support for natural language-style search patterns
🔧 Improvements
Architecture Enhancements
- Modular SSH callbacks: Refactored host key validation system for better extensibility and maintainability
- Improved error messaging: More descriptive error messages for version compatibility issues
- Code organization: Moved prompt functionality to dedicated I/O package for better structure
User Experience
- Better debugging: Enhanced debug output for regex processing
- Clearer permissions: Scheduled users automatically receive appropriate file access permissions
🛠️ Technical Changes
- Updated version to 2.1.0
- Refactored SSH authentication system to support multiple callback types
- Added new configuration options for scheduled job management
- Improved code modularity with better separation of concerns
📋 Configuration
To use scheduled jobs, add a Schedule section to your server configuration:
{
"Schedule": [
{
"Name": "daily-logs",
"Enable": true,
"Files": "/var/log/app-$yesterday.log",
"Query": "your-mapreduce-query",
"Outfile": "/reports/daily-$today.txt",
"TimeRange": [9, 17]
}
]
}This release maintains full backward compatibility with existing configurations and usage patterns.