87 lines
1.6 KiB
Markdown
87 lines
1.6 KiB
Markdown
# Metrics API Examples
|
|
|
|
## Record Metric (Manual)
|
|
```bash
|
|
curl -X POST "http://localhost:8004/metrics/record" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"event_type": "user_created",
|
|
"entity_id": "123",
|
|
"entity_type": "user",
|
|
"user_id": 456,
|
|
"metadata": {"email": "user@example.com"}
|
|
}'
|
|
```
|
|
|
|
## Get Analytics Report (Last N Days)
|
|
```bash
|
|
curl "http://localhost:8004/metrics/report?days=7"
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"start_date": "2026-04-27T00:00:00",
|
|
"end_date": "2026-05-04T23:59:59",
|
|
"total_events": 245,
|
|
"events_by_type": {
|
|
"user_created": 12,
|
|
"report_created": 45,
|
|
"notification_sent": 188
|
|
}
|
|
}
|
|
```
|
|
|
|
## Get Daily Statistics
|
|
```bash
|
|
curl "http://localhost:8004/metrics/daily-stats?date=2026-05-04T00:00:00"
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"date": "2026-05-04T00:00:00",
|
|
"event_type": "user_created",
|
|
"count": 3
|
|
},
|
|
{
|
|
"date": "2026-05-04T00:00:00",
|
|
"event_type": "report_created",
|
|
"count": 8
|
|
}
|
|
]
|
|
```
|
|
|
|
## Get Event Summary (Date Range)
|
|
```bash
|
|
curl "http://localhost:8004/metrics/summary?start_date=2026-04-27T00:00:00&end_date=2026-05-04T23:59:59"
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"summary": {
|
|
"user_created": 12,
|
|
"report_created": 45,
|
|
"notification_sent": 188,
|
|
"moderation_completed": 5
|
|
},
|
|
"date_range": {
|
|
"start_date": "2026-04-27T00:00:00",
|
|
"end_date": "2026-05-04T23:59:59"
|
|
}
|
|
}
|
|
```
|
|
|
|
## Health Check
|
|
```bash
|
|
curl "http://localhost:8004/metrics/health"
|
|
```
|
|
|
|
## Automatic Events (RabbitMQ)
|
|
- `user_created`, `user_updated`, `user_deleted`
|
|
- `report_created`, `report_resolved`
|
|
- `notification_sent`
|
|
- `moderation_completed`
|