The "ff_debug" Command
The ff_debug command in ChromeOS manages debug tags and logging levels for flimflam, the network management system. This section explains how to use this debugging tool effectively.
Command Overview
The basic syntax for the command is:
bash
ff_debug [<tag_expression>] [--level <level>] [--persist]
ff_debug --help
ff_debug --reset
ff_debug --list_valid_tags
Understanding Debug Tags
Tag Expressions
The command uses boolean notation:
- + adds a debug tag
- - removes a debug tag
- Tags without operators replace existing tags
Debug Levels
- Level 4 (LOG_FATAL): Most critical only
- Level 0 (LOG_INFO): Standard information
- Levels below 0: Verbose logging (SLOG)
Using the Command
Basic Operations
-
View current settings:
bash ff_debug -
List valid tags:
bash ff_debug --list_valid_tags -
Reset all settings:
bash ff_debug --reset
Tag Management
-
Set specific tags:
bash ff_debug network+wifi -
Modify existing tags:
bash ff_debug +network-service
Log Level Control
-
Set log level:
bash ff_debug --level 0 -
Enable verbose logging:
bash ff_debug --level -4
Persistent Settings
- Save configuration:
bash ff_debug [options] --persist
Best Practices
Debug Configuration
- Initial Setup
- Check current settings
- List available tags
- Plan debug strategy
-
Consider persistence
-
Tag Selection
- Choose relevant tags
- Consider combinations
- Plan modifications
- Document changes
Log Management
- Level Selection
- Match debugging needs
- Consider volume
- Monitor impact
-
Adjust as needed
-
Resource Usage
- Watch storage usage
- Monitor performance
- Check system impact
- Manage log size
Common Use Cases
Network Troubleshooting
- General Debugging
- Set appropriate tags
- Adjust log levels
- Monitor output
-
Analyze results
-
Specific Issues
- Target relevant tags
- Focus debugging
- Collect evidence
- Document findings
Safety Considerations
System Impact
- Performance
- Log volume
- Storage usage
- Processing overhead
-
Memory impact
-
Resource Management
- Monitor usage
- Clean up logs
- Reset when done
- Manage persistence
Troubleshooting
Common Issues
- Configuration Problems
- Invalid tags
- Level conflicts
- Persistence issues
-
Reset failures
-
Resolution Steps
- Check valid tags
- Verify syntax
- Reset settings
- Rebuild configuration