agentsclimarketplace

Log error digest

Skill zebbern/claude-code-guide/skills/log-error-digest

Claude Code Guide - Setup, Commands, workflows, agents, skills & tips-n-tricks go from beginner to power user!

Install
npx -y skills add zebbern/claude-code-guide --skill log-error-digest

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Analyze log files to troubleshoot errors, identify peak error periods, and produce error clustering, frequency statistics, and time distribution reports. Supports JSON, syslog, and Nginx formats with automatic detection. Use when a user uploads a .log file and asks to analyze errors, find patterns, debug issues, or get distribution stats.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

3.8 KB, as published. Nobody here has run it

Log Error Digest

Automated log file analysis that produces error clustering, frequency statistics, and time distribution reports.

Features

  • Error Clustering: Groups similar error messages by normalizing dynamic parts (IPs, UUIDs, numbers, etc.) to identify root causes
  • Frequency Statistics: Counts occurrences by error type, sorted by severity
  • Time Distribution: Shows error distribution by hour and by date, helping pinpoint peak error periods

Supported Log Formats

FormatDescriptionAuto-detection
JSONOne JSON object per line with timestamp/level/message fieldsStarts with {
syslogRFC 3164 format, e.g. Jan 1 12:00:00 host proc[pid]: msgStarts with month name
NginxAccess log or error log formatStarts with IP or date/path pattern

Usage

python scripts/analyze_logs.py <log_file_path> [options]

Parameters

ParameterDescriptionDefault
log_filePath to the log file (required)-
--formatLog format: auto/json/syslog/nginxauto
--topShow Top N error clusters20
--outputExport results to a JSON fileTerminal output only
--levelFilter by log level (e.g. ERROR, WARN)All levels
--sinceOnly analyze logs after this time (ISO format)No limit
--untilOnly analyze logs before this time (ISO format)No limit

Examples

# Auto-detect format and analyze the entire log file
python scripts/analyze_logs.py /var/log/app.log

# Specify Nginx format, show only Top 10 errors
python scripts/analyze_logs.py /var/log/nginx/error.log --format nginx --top 10

# Filter ERROR level only, export JSON report
python scripts/analyze_logs.py app.log --level ERROR --output report.json

# Analyze logs within a specific time range
python scripts/analyze_logs.py app.log --since 2024-01-01T00:00:00 --until 2024-01-02T00:00:00

Output

Terminal Output

=======================================================
              Log Analysis Report
=======================================================

πŸ“Š Overview
  Detected format: json
  Total lines:     15,234
  Parsed:          15,100 (parse failures: 134)
  Matched entries: 12,800
  Errors:          2,341
  Time range:      2024-01-01 00:03:12 ~ 2024-01-01 23:58:45

πŸ”΄ Top Error Clusters (47 total)
  #1   [Γ—523  ] Connection refused to database at 10.0.1.5:5432
       First seen: 2024-01-01T00:15:30  Last seen: 2024-01-01T23:45:12
  #2   [Γ—312  ] Timeout waiting for response from user-service after 30000ms
       First seen: 2024-01-01T02:10:00  Last seen: 2024-01-01T22:30:45
  #3   [Γ—198  ] File not found: /data/uploads/img_99421.png
       First seen: 2024-01-01T08:00:00  Last seen: 2024-01-01T20:15:33
  ...

⏰ Time Distribution (by hour)
  00:00  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘  42
  01:00  β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘  18
  ...
  14:00  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ  523
  ...

πŸ“… Time Distribution (by date)
  2024-01-01  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ  2,341

JSON Output

Use the --output parameter to export a structured JSON report for further processing or integration with monitoring systems.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.