troubleshooting-template
Troubleshooting Template Generator
Generate helpful troubleshooting guides and FAQ documentation.
Document Structure
# Troubleshooting
## Quick Fixes
{common issues with quick solutions}
## Installation Issues
{installation problems}
## Configuration Issues
{config problems}
## Runtime Errors
{errors during execution}
## FAQ
{frequently asked questions}
## Getting Help
{how to report issues}
Section Templates
Quick Fixes Section
## Quick Fixes
### Reset to Known Good State
```bash
# Clear cache
rm -rf var/cache/*
# Reinstall dependencies
rm -rf vendor/ composer.lock
composer install
# Verify installation
php vendor/bin/package verify
Check Common Issues
| Symptom | Quick Fix |
|---|---|
| "Class not found" | Run composer dump-autoload |
| Permission denied | Run chmod -R 755 var/ |
| Config not loading | Check .env file exists |
| Connection refused | Verify service is running |
### Installation Issues Section
```markdown
## Installation Issues
### Composer Install Fails
**Symptom:**
Your requirements could not be resolved to an installable set of packages.
**Solutions:**
1. **Update Composer:**
```bash
composer self-update
-
Clear Composer cache:
composer clear-cache -
Check PHP version:
php -v # Must be 8.4 or higher -
Check required extensions:
php -m | grep -E "json|pdo|mbstring"
Extension Not Found
Symptom:
PHP Fatal error: Uncaught Error: Call to undefined function json_encode()
Solution:
Install missing PHP extension:
# Ubuntu/Debian
sudo apt-get install php8.5-json
# macOS with Homebrew
brew install php@8.5
# Verify
php -m | grep json
### Configuration Issues Section
```markdown
## Configuration Issues
### Environment Variables Not Loading
**Symptom:**
API key not configured
**Checklist:**
1. **Verify `.env` file exists:**
```bash
ls -la .env
-
Check variable is set:
grep "PACKAGE_API_KEY" .env -
Verify no syntax errors:
# Values with spaces need quotes PACKAGE_NAME="My App Name" # ✅ Correct PACKAGE_NAME=My App Name # ❌ Wrong -
Clear config cache:
php artisan config:clear # Laravel rm var/cache/config.php # Other frameworks
Invalid Configuration Value
Symptom:
Configuration error: 'timeout' must be a positive integer
Solution:
Check config/package.php:
// ❌ Wrong
'timeout' => '30', // String instead of int
// ✅ Correct
'timeout' => 30, // Integer
### Runtime Errors Section
```markdown
## Runtime Errors
### Connection Timeout
**Symptom:**
Error: Connection timed out after 30 seconds
**Possible Causes:**
1. **Network issues** — Check connectivity
2. **Firewall blocking** — Check outbound rules
3. **Service down** — Check status page
4. **Timeout too short** — Increase timeout
**Solutions:**
```php
// Increase timeout
$client = new Client([
'timeout' => 60, // 60 seconds
]);
# Test connectivity
curl -v https://api.example.com/health
Rate Limit Exceeded
Symptom:
{
"error": {
"code": "RATE_LIMITED",
"message": "Too many requests"
}
}
Solutions:
-
Implement backoff:
$client = new Client([ 'retry' => [ 'max_attempts' => 3, 'delay' => 1000, // ms ], ]); -
Cache responses:
$cache = new RedisCache(); $client = new Client(['cache' => $cache]); -
Upgrade plan for higher limits
Memory Limit Exceeded
Symptom:
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted
Solutions:
-
Process in batches:
foreach ($client->paginate(100) as $batch) { process($batch); } -
Increase memory limit:
ini_set('memory_limit', '256M'); -
Use generators:
foreach ($client->stream() as $item) { yield process($item); }
### FAQ Section
```markdown
## FAQ
### General
<details>
<summary><strong>Q: What PHP version is required?</strong></summary>
PHP 8.4 or higher is required. Check your version:
```bash
php -v
Yes, the library is used in production by many projects. We follow semantic versioning and maintain backward compatibility within major versions.
Configuration
Use environment-specific .env files:
.env # Base configuration
.env.local # Local overrides (not committed)
.env.test # Test environment
.env.prod # Production environment
Yes, you can pass configuration directly:
$client = new Client([
'api_key' => getenv('MY_API_KEY'),
]);
Performance
- Enable caching — Reduces API calls
- Use connection pooling — Reuse connections
- Batch requests — Reduce round trips
- Use async — Parallel processing
$client = new Client([
'cache' => new RedisCache(),
'pool_size' => 10,
]);
Getting Help Section
## Getting Help
### Before Asking for Help
1. **Search existing issues:** [GitHub Issues](https://github.com/vendor/package/issues)
2. **Check documentation:** [Docs](https://docs.example.com)
3. **Review changelog:** [CHANGELOG.md](CHANGELOG.md)
### Collect Debug Information
Run this command and include output in your issue:
```bash
php -v
composer show vendor/package
php -m | grep -E "json|pdo|curl"
Report a Bug
Create an issue with:
- Description — What happened?
- Expected — What should have happened?
- Steps to reproduce — How can we reproduce it?
- Environment — PHP version, OS, package version
- Error message — Full stack trace
Ask a Question
## Complete Example
```markdown
# Troubleshooting
## Quick Fixes
| Problem | Solution |
|---------|----------|
| Class not found | `composer dump-autoload` |
| Permission denied | `chmod -R 755 var/` |
| Config missing | Check `.env` exists |
## Common Errors
### "Invalid API Key"
**Symptom:**
Error: Invalid API key provided
**Solutions:**
1. Verify key in `.env`:
```bash
grep "API_KEY" .env
-
Check for extra whitespace:
API_KEY=abc123 # ✅ No quotes needed API_KEY= abc123 # ❌ Extra space -
Regenerate key at dashboard
FAQ
Free tier allows 100 requests/hour. Upgrade for more.
Get Help
## Generation Instructions
When generating troubleshooting docs:
1. **Start with symptoms** — What user sees
2. **Explain causes** — Why it happens
3. **Provide solutions** — Step-by-step fixes
4. **Include verification** — How to confirm fix
5. **Use collapsible FAQ** — Reduce scrolling
6. **Link to help** — Where to get more support
More from dykyi-roman/awesome-claude-code
psr-overview-knowledge
PHP Standards Recommendations (PSR) overview knowledge base. Provides comprehensive reference for all accepted PSRs including PSR-1,3,4,6,7,11,12,13,14,15,16,17,18,20. Use for PSR selection decisions and compliance audits.
22detect-code-smells
Detects code smells in PHP codebases. Identifies God Class, Feature Envy, Data Clumps, Long Parameter List, Long Method, Primitive Obsession, Message Chains, Inappropriate Intimacy. Generates actionable reports with refactoring recommendations.
15clean-arch-knowledge
Clean Architecture knowledge base. Provides patterns, antipatterns, and PHP-specific guidelines for Clean Architecture and Hexagonal Architecture audits.
15ddd-knowledge
DDD architecture knowledge base. Provides patterns, antipatterns, and PHP-specific guidelines for Domain-Driven Design audits.
14testing-knowledge
Testing knowledge base for PHP 8.4 projects. Provides testing pyramid, AAA pattern, naming conventions, isolation principles, DDD testing guidelines, and PHPUnit patterns.
12bug-root-cause-finder
Root cause analysis methods for PHP bugs. Provides 5 Whys technique, fault tree analysis, git bisect guidance, and stack trace parsing.
12