Salta ai contenuti

Utilizzo di Claude Code

Strumenti completi di monitoraggio e analisi dell’utilizzo di Claude Code per tracciare il consumo di token, costi, metriche di prestazioni e ottimizzazione dell’utilizzo.

Panoramica

Gli strumenti di Claude Code Usage forniscono funzionalità di monitoraggio in tempo reale, analisi e ottimizzazione per il consumo di token Claude Code e l’utilizzo delle API. Questi strumenti aiutano gli sviluppatori a tracciare i costi, monitorare le prestazioni, analizzare i modelli di utilizzo e ottimizzare i loro workflow di Claude Code attraverso metriche dettagliate, avvisi e funzionalità di reporting.

⚠️ Avviso di Utilizzo: Gli strumenti di monitoraggio dell’utilizzo richiedono l’accesso ai file di sessione di Claude Code e ai log delle API. Assicurarsi di avere le autorizzazioni appropriate e rispettare la conformità della privacy dei dati durante l’implementazione di soluzioni di monitoraggio.

Strumenti Principali

Monitor di Utilizzo Claude Code

# Install via npm
npm install -g claude-code-usage-monitor

# Install via pip
pip install claude-code-usage-monitor

# Clone from GitHub
git clone https://github.com/Maciek-roboblog/Claude-Code-Usage-Monitor.git
cd Claude-Code-Usage-Monitor
npm install
npm start

Strumento CLI ccusage

# Install ccusage
npm install -g ccusage

# Basic usage analysis
ccusage analyze

# Analyze specific session
ccusage analyze --session session-id

# Generate report
ccusage report --format json

# Real-time monitoring
ccusage monitor --live

Installazione e Configurazione

Configurazione Monitor di Utilizzo

# Start usage monitor
claude-usage-monitor --port 3000

# With configuration file
claude-usage-monitor --config config.json

# Docker deployment
docker run -p 3000:3000 -v ~/.claude:/data claude-usage-monitor

Estensione VS Code

# Install from marketplace
code --install-extension suzuki0430.ccusage-vscode

# Manual installation
git clone https://github.com/suzuki0430/ccusage-vscode.git
cd ccusage-vscode
npm install
npm run compile
code --install-extension ccusage-vscode-*.vsix

Estensione Raycast

# Install Raycast extension
raycast://extensions/nyatinte/ccusage

# Configure API access
raycast://preferences/extensions/ccusage

Comandi di Monitoraggio

Monitoraggio in Tempo Reale

ComandoDescrizione
ccusage monitorAvvia monitoraggio in tempo reale
ccusage dashboardDashboard web aperta
ccusage statusVerifica stato di utilizzo corrente
ccusage alertsVisualizza avvisi attivi
ccusage liveFlusso di utilizzo live
ccusage watchMonitora metriche specifiche
ccusage tailLog di utilizzo di Tail

Comandi di Analisi

ComandoDescrizione
ccusage analyzeAnalizzare i modelli di utilizzo
ccusage reportGenera report di utilizzo
ccusage summaryRiepilogo dell’utilizzo
ccusage trendsAnalisi delle tendenze di utilizzo
ccusage compareConfronta periodi di tempo
ccusage breakdownRipartizione dettagliata
ccusage optimizeSuggerimenti di ottimizzazione

Configurazione

Configurazione Monitor

{
  "monitor": {
    "port": 3000,
    "host": "localhost",
    "updateInterval": 1000,
    "retentionDays": 30,
    "enableAlerts": true
  },
  "claude": {
    "sessionPath": "~/.claude/sessions",
    "logPath": "~/.claude/logs",
    "apiEndpoint": "https://api.anthropic.com",
    "trackModels": ["claude-3-sonnet", "claude-3-haiku", "claude-3-opus"]
  },
  "metrics": {
    "trackTokens": true,
    "trackCosts": true,
    "trackPerformance": true,
    "trackErrors": true,
    "granularity": "minute"
  },
  "alerts": {
    "dailyLimit": 10000,
    "costThreshold": 50.00,
    "errorRate": 0.05,
    "responseTime": 5000
  }
}

Tracciamento Costi

{
  "costTracking": {
    "enabled": true,
    "currency": "USD",
    "models": {
      "claude-3-opus": {
        "inputCost": 0.000015,
        "outputCost": 0.000075
      },
      "claude-3-sonnet": {
        "inputCost": 0.000003,
        "outputCost": 0.000015
      },
      "claude-3-haiku": {
        "inputCost": 0.00000025,
        "outputCost": 0.00000125
      }
    },
    "budgets": {
      "daily": 25.00,
      "weekly": 150.00,
      "monthly": 500.00
    }
  }
}

Funzionalità Dashboard

Dashboard Web

# Access dashboard
http://localhost:3000

# Dashboard sections
- Real-time metrics
- Usage graphs
- Cost analysis
- Session history
- Performance metrics
- Alert management
- Export options

Componenti Dashboard

ComponenteDescrizione
Token CounterUtilizzo di token in tempo reale
Cost TrackerCosti attuali e previsti
Session BrowserSfoglia cronologia sessione
Performance GraphMetriche dei tempi di risposta
Error MonitorTracciamento del tasso di errore
Usage HeatmapVisualizzazione del pattern di utilizzo
Alert PanelAvvisi e notifiche attivi

Visualizzazione Metriche

// Dashboard metrics configuration
const dashboardConfig = {
  widgets: [
    {
      type: "counter",
      metric: "tokens_today",
      title: "Today's Tokens",
      format: "number"
    },
    {
      type: "gauge",
      metric: "cost_today",
      title: "Today's Cost",
      format: "currency",
      max: 50
    },
    {
      type: "chart",
      metric: "tokens_hourly",
      title: "Hourly Usage",
      timeRange: "24h"
    },
    {
      type: "table",
      metric: "top_sessions",
      title: "Top Sessions",
      limit: 10
    }
  ],
  refreshInterval: 5000,
  theme: "dark"
};

Analisi di Utilizzo

Analisi Token

# Analyze token usage
ccusage tokens --period today
ccusage tokens --period week
ccusage tokens --period month

# Token breakdown by model
ccusage tokens --by-model

# Token efficiency analysis
ccusage tokens --efficiency

# Token usage trends
ccusage tokens --trends

Analisi Costi

# Cost breakdown
ccusage costs --breakdown

# Cost by time period
ccusage costs --period month

# Cost optimization suggestions
ccusage costs --optimize

# Budget tracking
ccusage costs --budget-status

# Cost projections
ccusage costs --forecast

Analisi Prestazioni

# Response time analysis
ccusage performance --response-time

# Throughput analysis
ccusage performance --throughput

# Error rate analysis
ccusage performance --errors

# Performance trends
ccusage performance --trends

# Bottleneck identification
ccusage performance --bottlenecks

Reporting

Generazione Report

# Generate daily report
ccusage report --period today --format pdf

# Weekly summary
ccusage report --period week --format html

# Monthly analysis
ccusage report --period month --format json

# Custom date range
ccusage report --from 2025-07-01 --to 2025-07-15

# Detailed breakdown
ccusage report --detailed --include-sessions

Formati Report

FormatoDescrizione
JSONDati leggibili da macchina
CSVCompatibile con Spreadsheet
HTMLReport visualizzabile sul Web
PDFDocumento stampabile
MarkdownFormato della documentazione
ExcelFoglio di calcolo avanzato

Reporting Automatizzato

{
  "automation": {
    "reports": [
      {
        "name": "daily_summary",
        "schedule": "0 9 * * *",
        "format": "email",
        "recipients": ["team@company.com"],
        "template": "daily_template"
      },
      {
        "name": "weekly_analysis",
        "schedule": "0 9 * * 1",
        "format": "pdf",
        "storage": "s3://reports-bucket/weekly/",
        "template": "weekly_template"
      }
    ]
  }
}

Sistema di Allerta

Configurazione Avvisi

Would you like me to continue with the remaining numbered sections?```json { “alerts”: { “rules”: [ { “name”: “high_token_usage”, “condition”: “tokens_per_hour > 5000”, “severity”: “warning”, “actions”: [“email”, “slack”] }, { “name”: “budget_exceeded”, “condition”: “daily_cost > budget.daily * 0.9”, “severity”: “critical”, “actions”: [“email”, “sms”, “webhook”] }, { “name”: “high_error_rate”, “condition”: “error_rate > 0.05”, “severity”: “warning”, “actions”: [“slack”] } ], “channels”: { “email”: { “smtp”: “smtp.gmail.com”, “from”: “alerts@company.com”, “to”: [“admin@company.com”] }, “slack”: { “webhook”: “https://hooks.slack.com/…”, “channel”: “#claude-alerts” }, “webhook”: { “url”: “https://api.company.com/alerts”, “method”: “POST” } } } }


| Avviso | Trigger | Azione |
|---------|-------------|-------------|
| `Token Limit` | Soglia giornaliera di token | Notifica email |
| `Cost Threshold` | Percentuale di budget | Avviso Slack |
| `Error Rate` | Percentuale di errore elevata | Chiamata webhook |
| `Performance` | Tempo di risposta lento | Evidenziazione Dashboard |
| `Session Limit` | Sessioni massime raggiunte | Pulizia automatica |## Funzionalità di Ottimizzazione
```bash
# Analyze optimization opportunities
ccusage optimize --analyze

# Token efficiency suggestions
ccusage optimize --tokens

# Cost reduction recommendations
ccusage optimize --costs

# Performance improvements
ccusage optimize --performance

# Model selection optimization
ccusage optimize --models
```### Ottimizzazione dell'Utilizzo
```json
{
  "optimization": {
    "strategies": [
      {
        "name": "model_selection",
        "description": "Choose optimal model for task",
        "rules": [
          {
            "condition": "task_complexity < 0.3",
            "recommendation": "claude-3-haiku"
          },
          {
            "condition": "task_complexity >= 0.7",
            "recommendation": "claude-3-opus"
          }
        ]
      },
      {
        "name": "context_optimization",
        "description": "Optimize context window usage",
        "techniques": [
          "context_compression",
          "selective_history",
          "smart_truncation"
        ]
      }
    ]
  }
}
```### Strategie di Ottimizzazione
```yaml
# GitHub Actions workflow
name: Claude Usage Monitoring
on:
  schedule:
    - cron: '0 */6 * * *'
jobs:
  monitor:
    runs-on: ubuntu-latest
    steps:
      - name: Check Usage
        run: |
          ccusage analyze --format json > usage.json
          ccusage costs --budget-check
      - name: Upload Report
        uses: actions/upload-artifact@v2
        with:
          name: usage-report
          path: usage.json
```## Esempi di Integrazione
```javascript
// Slack bot for usage monitoring
const { App } = require('@slack/bolt');

const app = new App({
  token: process.env.SLACK_BOT_TOKEN,
  signingSecret: process.env.SLACK_SIGNING_SECRET
});

app.command('/claude-usage', async ({ command, ack, respond }) => {
  await ack();
  
  const usage = await getClaudeUsage();
  await respond({
    text: `Claude Usage Today:
    Tokens: ${usage.tokens}
    Cost: $${usage.cost}
    Sessions: ${usage.sessions}`
  });
});
```### Integrazione CI/CD
```yaml
# Prometheus configuration
global:
  scrape_interval: 15s
scrape_configs:
  - job_name: 'claude-usage'
    static_configs:
      - targets: ['localhost:3000']
    metrics_path: '/metrics'
    scrape_interval: 30s
```### Integrazione Slack
```bash
# Get current usage
GET /api/usage/current

# Get usage history
GET /api/usage/history?period=7d

# Get cost breakdown
GET /api/costs/breakdown

# Get performance metrics
GET /api/performance/metrics

# Get alerts
GET /api/alerts

# Export data
GET /api/export?format=json&period=month
```### Integrazione Prometheus
```javascript
// Real-time usage updates
const ws = new WebSocket('ws://localhost:3000/ws');

ws.onmessage = (event) => {
  const data = JSON.parse(event.data);
  switch(data.type) {
    case 'usage_update':
      updateUsageDisplay(data.usage);
      break;
    case 'alert':
      showAlert(data.alert);
      break;
    case 'cost_update':
      updateCostDisplay(data.cost);
      break;
  }
};
```## Riferimento API
```bash
# Monitor not starting
- Check port availability
- Verify session file permissions
- Check configuration file syntax
- Review log files

# Missing data
- Verify Claude Code session path
- Check file permissions
- Ensure proper API access
- Review data retention settings

# Performance issues
- Reduce monitoring frequency
- Optimize database queries
- Clear old data
- Check system resources
```### Endpoint REST API
```bash
# Enable debug mode
DEBUG=ccusage:* ccusage monitor

# Verbose logging
ccusage --verbose analyze

# Test configuration
ccusage config --test

# Validate data sources
ccusage validate --sources
```### WebSocket API
https://github.com/Maciek-roboblog/Claude-Code-Usage-Monitor#

# Risoluzione dei Problemi
https://github.com/ryoppippi/ccusage##

# Problemi Comuni
https://marketplace.visualstudio.com/items?itemName=suzuki0430.ccusage-vscode##

# Comandi di Debug
https://www.raycast.com/nyatinte/ccusage#

# Risorse
https://docs.claude-usage.dev/- [Monitor dell'Utilizzo del Codice di Claude su GitHub](