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
| Comando | Descrizione |
|---|---|
ccusage monitor | Avvia monitoraggio in tempo reale |
ccusage dashboard | Dashboard web aperta |
ccusage status | Verifica stato di utilizzo corrente |
ccusage alerts | Visualizza avvisi attivi |
ccusage live | Flusso di utilizzo live |
ccusage watch | Monitora metriche specifiche |
ccusage tail | Log di utilizzo di Tail |
Comandi di Analisi
| Comando | Descrizione |
|---|---|
ccusage analyze | Analizzare i modelli di utilizzo |
ccusage report | Genera report di utilizzo |
ccusage summary | Riepilogo dell’utilizzo |
ccusage trends | Analisi delle tendenze di utilizzo |
ccusage compare | Confronta periodi di tempo |
ccusage breakdown | Ripartizione dettagliata |
ccusage optimize | Suggerimenti 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
| Componente | Descrizione |
|---|---|
Token Counter | Utilizzo di token in tempo reale |
Cost Tracker | Costi attuali e previsti |
Session Browser | Sfoglia cronologia sessione |
Performance Graph | Metriche dei tempi di risposta |
Error Monitor | Tracciamento del tasso di errore |
Usage Heatmap | Visualizzazione del pattern di utilizzo |
Alert Panel | Avvisi 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
| Formato | Descrizione |
|---|---|
JSON | Dati leggibili da macchina |
CSV | Compatibile con Spreadsheet |
HTML | Report visualizzabile sul Web |
PDF | Documento stampabile |
Markdown | Formato della documentazione |
Excel | Foglio 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](