Your Directus instance is now running with test data and the Usage Analytics extension installed.
Credentials:
- Email:
admin@example.com - Password:
admin123
After logging in, the Usage Analytics extension should appear in one of two locations:
Look for "Usage Analytics" with a 📊 analytics icon in the left sidebar navigation, between the main menu items.
If not in the main navigation:
- Click the Settings icon (gear ⚙️) in the left sidebar
- Scroll down to find Usage Analytics
Your Directus instance now contains:
- Posts: 6 articles (5 published, 1 draft)
- Pages: 3 static pages (About, Contact, Privacy)
- Categories: 4 categories (Technology, Business, Lifestyle, Travel)
- Authors: 3 content creators
- directus_activity: ~43 activity log entries
- directus_users: Admin user
- directus_files: Empty (can upload files to generate more activity)
Current activity data includes:
- Total Requests: 43
- Actions: 41 create operations, 2 login events
- Collections: Data distributed across posts, categories, authors, pages
- Time Range: Last 30 minutes (from seeding script)
What to test:
- Navigate to the Collection Storage tab
- View row counts for all collections
- Check bar chart visualization
- Toggle "Top 10 only" filter
- Verify percentage calculations
- Click refresh to reload data
Expected Results:
Posts: 6 rows
Categories: 4 rows
Authors: 3 rows
Pages: 3 rows
System collections: Various row counts
What to test:
- Navigate to the API Activity tab
- Select different date ranges (24h, 7d, 30d)
- View activity by collection
- View activity by action (create, read, update, delete)
- Toggle chart types (bar ↔ pie)
- Check statistics cards (total requests, unique users, unique IPs)
- Enable/disable "Top 10" filter
Expected Results:
Total Requests: 43
Unique Users: 1
Unique IPs: 1
By Collection:
- directus_fields: 21 requests (48.8%)
- posts: 6 requests (14%)
- categories: 4 requests (9.3%)
- ...
By Action:
- create: 41 requests (95.3%)
- login: 2 requests (4.7%)
What to test:
- View top IPs list
- Filter activity by specific IP address
- Check IP-specific statistics
- Clear IP filter
Expected Results:
- Single IP address (Docker container IP or 172.x.x.x)
- All 43 requests from this IP
To create more varied test data and activity logs:
-
Create new items:
- Go to Content → Posts → Create new post
- Go to Content → Pages → Create new page
-
Edit existing items:
- Open any post or page
- Make changes and save
- This generates UPDATE activity
-
Delete items:
- Select an item
- Delete it
- This generates DELETE activity
-
Upload files:
- Go to File Library
- Upload images or documents
- This generates CREATE activity for
directus_files
-
Log out and in:
- Generates LOGIN activity
Run the seed script again to add more activity:
node seed-data.jsOr create a custom activity generator:
curl -X POST http://localhost:8055/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"admin@example.com","password":"admin123"}'
# Save the token and use it for requests
curl http://localhost:8055/items/posts?limit=10 \
-H "Authorization: Bearer YOUR_TOKEN"-
Check Docker logs:
docker-compose logs directus | grep -i extensionShould show:
INFO: Loaded extensions: directus-extension-usage-analytics -
Verify build output:
ls -lh dist/ # Should show api.js (~79KB) and app.js (~244KB) -
Restart Directus:
docker-compose restart directus
-
Check user role:
- Extension only shows for admin users
- Verify you're logged in as admin@example.com
-
Verify data exists:
curl http://localhost:8055/usage-analytics-api/collections curl http://localhost:8055/usage-analytics-api/activity
-
Check browser console (F12) for errors
-
Adjust date range - Activity may be outside current filter range
-
Check Directus is running:
docker-compose ps # directus-app should be "Up" -
Check database connection:
docker-compose logs database # Should show successful connections -
Verify PostgreSQL:
docker exec -it directus-db psql -U directus -c "SELECT COUNT(*) FROM directus_activity;"
With the current data (small dataset), all queries should be fast (<100ms).
To test with larger datasets:
- Add database indexes (see TESTING.md)
- Generate more activity (run seed script multiple times)
- Monitor query times in the extension UI (displayed in footer)
- ✅ Extension is installed - Working correctly
- ✅ Test data is loaded - 4 collections, 16 items, 43 activity entries
- 🎯 Test all features - Follow testing checklist above
- 📸 Take screenshots - For documentation (optional)
- 🚀 Build for production - When ready to publish
For detailed testing procedures, see TESTING.md
For issues or questions:
- Check Directus logs:
docker-compose logs -f directus - Review Directus Extensions Docs
- Open an issue on GitHub
Happy Testing! 🎉