From ce
Guides log analysis with grep filters, bash pipelines, iterative refinement, and utility scripts to debug errors, incidents, and patterns efficiently.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ce:reading-logsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**IRON LAW:** Filter first, then read. Never open a large log file without narrowing it first.
IRON LAW: Filter first, then read. Never open a large log file without narrowing it first.
For log files over a few hundred lines, delegate to the @ce:log-reader agent. It runs on haiku to keep costs low and context clean. Prompt it with:
scripts/ utilities available (see Utility Scripts below)The agent has this skill preloaded, so it already knows the methodology. Keep your prompt tight and specific - don't paste log contents into the delegation message.
**/*.log
**/logs/**
**/*.log.* # Rotated logs
# Severity search
grep -Ei "error|warn" app.log
# Exclude noise
grep -i "ERROR" app.log | grep -v "known-benign"
# Context around matches
grep -C 5 "ERROR" app.log # 5 lines before/after
# Time window
grep "2025-12-04T11:" app.log | grep "ERROR"
# Count occurrences
grep -c "connection refused" app.log
# Recent only
tail -n 2000 app.log | grep -Ei "error"
# Top recurring
grep -i "ERROR" app.log | sort | uniq -c | sort -nr | head -20
Only after narrowing with Grep. Use context flags (-C, -A, -B) to grab targeted chunks.
Glob)grep "2025-12-04T11:" service.log | grep -i "timeout"grep "req-abc123" *.loggrep -C 10 "req-abc123" app.loggrep -Ei "error|warn" app.loggrep -i "ERROR" app.log | sort | uniq -c | sort -nr | headFor complex operations, use the scripts in scripts/:
# Aggregate errors by frequency (normalizes timestamps/IDs)
bash scripts/aggregate-errors.sh app.log "ERROR" 20
# Extract and group stack traces by type
bash scripts/extract-stack-traces.sh app.log "NullPointer"
# Parse JSON logs with jq filter
bash scripts/parse-json-logs.sh app.log 'select(.level == "error")'
# Show error distribution over time (hourly/minute buckets)
bash scripts/timeline.sh app.log "ERROR" hour
# Trace a request ID across multiple log files
bash scripts/trace-request.sh req-abc123 logs/
# Find slow operations by duration
bash scripts/slow-requests.sh app.log 1000 20
npx claudepluginhub rileyhilliard/claude-essentials --plugin ceAnalyzes JSONL and other log files using rg and jq: structured extraction, cross-log correlation, timeline reconstruction, pattern search.
Parses JSON, Apache, and custom app logs to detect error trends, anomalies, performance metrics, user patterns, and system health; provides root cause analysis and fix recommendations.
Analyzes application logs to detect slow requests, recurring errors, and resource anomalies with summaries and optimization suggestions. Useful for performance troubleshooting and debugging.