Skip to main content
skill CX Codex

log-error-digest — Claude Code skill: log analysis and setup

This skill groups similar log errors and reports their frequency and timing. Use it to spot recurring failures and periods with error spikes.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add zebbern/claude-code-guide --skill log-error-digest -a claude-code
Open on GitHub

What log-error-digest does

The skill analyzes JSON, syslog, and Nginx logs. It groups similar messages by normalizing changing values such as IP addresses, UUIDs, and numbers, then counts errors by type and charts their distribution by hour and date.

It runs scripts/analyze_logs.py through python. The script detects the format automatically, or you can set it with --format; filters are available for log level and time range, and --output saves a JSON report. Pass a log file path to the script. Its supported formats are JSON, syslog, and Nginx, so logs in other formats are outside its scope.

What it helps with

  • group similar error messages
  • find hours and dates with error spikes
  • count errors by type
  • filter log entries by level or time range
  • save analysis results as JSON

Example prompts for the agent

  • Analyze app.log, group similar errors, and show how they are distributed over time.
  • Read error.log as Nginx logs and list the 10 most frequent error groups.
  • Filter app.log to ERROR entries and save the report as report.json.

How to install log-error-digest

1Skills CLI (Vercel)

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

2Manually: put the files in place

~/.claude/skills/log-error-digest/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/log-error-digest/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about log-error-digest

How do I install log-error-digest in Claude Code?

Run npx skills add zebbern/claude-code-guide --skill log-error-digest -a claude-code, then check ~/.claude/skills/log-error-digest/SKILL.md.

What does log-error-digest do?

It parses log files, groups similar errors, and reports error counts and timing patterns. You can save the report as JSON.

Which log formats does log-error-digest support?

It supports JSON, syslog, and Nginx logs. The script detects the format automatically, or you can specify it with --format.

Source text

SKILL.md · MIT
---
name: log-error-digest
description: "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."
license: MIT
type: tool
tags: [logs, analysis, devops, monitoring]
---

# 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

| Format | Description | Auto-detection |
|--------|-------------|----------------|
| JSON | One JSON object per line with `timestamp`/`level`/`message` fields | Starts with `{` |
| syslog | RFC 3164 format, e.g. `Jan  1 12:00:00 host proc[pid]: msg` | Starts with month name |
| Nginx | Access log or error log format | Starts with IP or date/path pattern |

## Usage

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

### Parameters

| Parameter | Description | Default |
|-----------|-------------|---------|
| `log_file` | Path to the log file (required) | - |
| `--format` | Log format: `auto`/`json`/`syslog`/`nginx` | `auto` |
| `--top` | Show Top N error clusters | `20` |
| `--output` | Export results to a JSON file | Terminal output only |
| `--level` | Filter by log level (e.g. `ERROR`, `WARN`) | All levels |
| `--since` | Only analyze logs after this time (ISO format) | No limit |
| `--until` | Only analyze logs before this time (ISO format) | No limit |

### Examples

```bash
# 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.

© zebbern · MIT · zebbern/claude-code-guide

Similar skills

All skills for DevOps and infrastructure →

From the same set40

pentest-commands Quick command reference for penetration testing and security auditing tools. Helps look up syntax for Nmap, Nikto, and related utilities during assessments. CX Codex +1 ★ 4,679repo stars nextjs-developer Build Next.js 14+ apps with App Router using guidance for server components, data fetching, SEO, and deployment preparation. CX Codex +1 ★ 4,679repo stars network-101 A skill that walks the agent through standing up and testing HTTP, HTTPS, SNMP and SMB in a pentest lab, from service config to log analysis. CX Codex +1 ★ 4,679repo stars metasploit-framework Guides your AI coding assistant through Metasploit Framework commands, module search filters, and session tracking during authorized penetration tests. CX Codex +1 ★ 4,679repo stars linux-shell-scripting A skill that hands your agent ready bash templates for backups, resource monitoring, user management and log parsing. Useful when you want a working script, not a sketch. CX Codex +1 ★ 4,679repo stars http-load-profiler Runs stepped HTTP load tests using wrk or ab, captures p50/p90/p99 latencies, and identifies system inflection points. CX Codex +1 ★ 4,679repo stars file-path-traversal This skill guides directory traversal and LFI checks in web apps. Use it when a request may expose files beyond the intended web root. CX Codex +1 ★ 4,679repo stars dev-guide-generator Turns a technical topic into a full tutorial: prerequisites, environment setup, core steps, error troubleshooting and a closing cheatsheet. CX Codex +1 ★ 4,679repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor