Copilot Logger
This lightweight extension tracks GitHub Copilot completions and chat sessions, aggregates metrics, and saves them locally as structured JSON for further private analysis and reporting.
Note: This extension only collects and stores raw metrics data. Analysis and reporting are not included and must be set up separately by the user.
Fully local data collection with no telemetry or data transmission outside the user's machine.
Key Features
- Local tracking of GitHub Copilot completions and chat activity
- Automatic background collection every 60 minutes
- Structured JSON metrics for usage reporting
- OneDrive auto-sync - Automatic protection against DevBox rebuild data loss
- Configurable data storage location
- No external servers, no uploads, no dependency on network access
Designed for organizations requiring strict privacy, compliance, or offline workflows.
Requirements
- Visual Studio Code 1.104.0+
- GitHub Copilot extension installed
- Active Copilot subscription
Quick Start
Initial Setup
- Install the extension from the VS Code Marketplace
- Important: Look for the configuration notification in the bottom-right corner after installation
- Open the Command Palette
Ctrl+Shift+P(Windows/Linux) orCmd+Shift+P(macOS)
- Run → Copilot Logger: Configure User Settings
- Provide name (same as your corporate email address without domain), customer name, and team/project name when prompted
Note: If you miss the initial setup notification, you can always run the configuration command from the Command Palette (step 3-5).
Validate Installation
- Trigger a manual collection
Ctrl+Shift+P → Copilot Logger: Collect Logs
- When the dialog opens, navigate to the logs folder
- Confirm that metrics files are present
The extension will now operate in the background at regular intervals.
Data Storage
Automatic OneDrive Protection (Recommended)
NEW: for Windows user The extension automatically detects and uses OneDrive to protect your data from DevBox rebuilds!
How it works:
- OneDrive detected → Logs automatically saved to OneDrive (protected from DevBox rebuild)
- No OneDrive → Logs saved to Desktop (will be lost on DevBox rebuild)
OneDrive location (when detected):
~/OneDrive/CopilotLogs/{user}_{customer_name}_{team}_{hostname}-vs_code_log_collector/
Desktop location (fallback):
~/Desktop/{user}_{customer_name}_{team}_{hostname}-vs_code_log_collector/
Note: The directory name includes your machine's hostname to prevent data conflicts when using multiple devices with the same OneDrive account.
Example folder structure:
John_Doe_CustomerName_Team1_LAPTOP_ABC123-vs_code_log_collector/
├── metrics/
│   └── metrics_2025-10-15.json
├── collection-state.json
├── parsing_state.json
├── user_config.json
└── notification-history.json
Force Reset/Clear Extension State
⚠️ When to clear global storage:
- Extension won't start or shows persistent errors
- Need to completely reset and reconfigure
- Troubleshooting circular dependency issues
How to reset:
- Close VS Code completely
- Delete the global storage folder:
- macOS/Linux: ~/Library/Application Support/Code/User/globalStorage/gurgenkolotyan.avocado-copilot-logger/
- Windows: %APPDATA%\Code\User\globalStorage\gurgenkolotyan.avocado-copilot-logger\
 
- Reopen VS Code
- Reconfigure using Copilot Logger: Configure User Settings
Important: Your logs and metrics in OneDrive/Desktop are safe! Only the internal config cache is deleted.
What happens during first startup?
If you already have logs on your Desktop, the extension will:
- Detect your OneDrive folder
- Automatically copy all existing logs from Desktop to OneDrive
- Keep the original Desktop files for safety
- Show a migration summary in the Output panel
No action needed - everything happens automatically!
Storage Priority Order
- Custom directory (if you set one in settings) - highest priority
- OneDrive (if installed and enableOneDriveSyncis true) - recommended
- Desktop (fallback) - data lost on DevBox rebuild
Settings
Control OneDrive sync behavior in VS Code settings (Copilot Logger):
For DevBox Users
⚠️ Important: Without OneDrive, all logs are lost when your DevBox is rebuilt!
Recommended:
- Install OneDrive on your DevBox
- Keep Enable OneDrive Syncturned ON
- Your logs will survive DevBox rebuilds automatically
Benefits:
- Zero configuration required
- Automatic data protection
- Seamless across multiple DevBoxes
- No manual backup needed
Example (metrics_YYYY-MM-DD.json):
{
  "date": "2025-10-08",
  "source": "copilot",
  "action": "completion",
  "servedBy": "gpt-5",
  "numRequests": 3,
  "name": "John Doe",
  "team": "DevOps",
  "customerName": "Apple",
  "ide": "Visual Studio Code"
}
Tracked elements:
- Activity date
- Interaction type (completion or chat)
- Request count
- User/team/customer identifiers from configuration
- IDE identifier
No workspace or source code is collected.
Notification Management
The extension includes a smart notification system that prevents notification overload while keeping you informed.
Status Bar Indicator
Look for the Copilot Logger icon in the status bar (bottom-right):
- $(check) Copilot Logger - Ready and working
- $(sync~spin) Copilot Logger - Collecting logs
- $(bell-dot) Copilot Logger (N) - N unread notifications
- $(warning) Copilot Logger - Warning state
- $(error) Copilot Logger - Error occurred
Click the status bar item to view notification history.
Notification Commands
Available via Command Palette (Ctrl+Shift+P / Cmd+Shift+P):
- Copilot Logger: View Notification History - See all past notifications
- Copilot Logger: Clear Notification History - Clear notification history
- Copilot Logger: Open Notification Settings - Configure notification preferences
Notification Settings
Control which notifications appear (Settings → Copilot Logger):
- Show Info- Informational messages (default: on)
- Show Warnings- Warning messages (default: on)
- Show Errors- Error messages (default: on)
- Show Success- Success messages (default: on)
- Quiet Mode- Only show errors (default: off)
- Auto Show Output- Automatically open Output channel on warnings/errors (default: off)
Important: Even if you disable popup notifications, all messages are:
- Logged to the Output channel (View → Output → Copilot Logger)
- Saved to notification history (accessible via status bar or Command Palette)
This solves the common problem where notifications overlap and hide important alerts. You can now:
- Disable distracting popups without losing visibility
- Review all past notifications at any time
- Re-enable notifications easily through settings
Additional Settings
To customize storage behavior:
- Open Settings → search: Copilot Logger
- Configure options:
- Enable OneDrive Sync - Toggle automatic OneDrive detection (default: ON)
- Custom Log Directory - Set a custom storage path (optional)
 
- Reload the window: Ctrl+Shift+P → Reload Window
See Data Storage section above for detailed OneDrive configuration.
Troubleshooting
| Issue | Suggested Action | 
| Logs not appearing | Ensure Copilot suggestions or chats are used | 
| Folder not created | Verify write permissions or set custom path | 
| OneDrive not detected | Check if OneDrive is installed and running. View Output → Copilot Logger for details | 
| Migration not working | Check Output → Copilot Logger for migration status. Old files remain on Desktop for safety | 
| Want to use Desktop instead | Disable Enable OneDrive Sync in settings, then reload window | 
| Errors shown | Check View → Output → Copilot Logger | 
For OneDrive issues:
- Check the Output panel (View → Output → Copilot Logger) for detailed status messages
- The extension shows whether OneDrive was detected or not
- If OneDrive is installed but not detected, try restarting VS Code
Force Reset Extension:
If you encounter persistent errors or need to completely reset the extension:
- Close VS Code
- Delete the global storage folder:
- macOS/Linux: ~/Library/Application Support/Code/User/globalStorage/gurgenkolotyan.avocado-copilot-logger/
- Windows: %APPDATA%\Code\User\globalStorage\gurgenkolotyan.avocado-copilot-logger\
 
- Reopen VS Code
- Reconfigure using Copilot Logger: Configure User Settings
Note: Your logs and metrics remain safe in OneDrive/Desktop. Only internal extension state is reset.
See Additional Storage Location section for more details about global storage.
🔒 Data Privacy & Compliance
This extension adheres to strict local-only data handling:
✅ Data collected: Copilot usage metadata only.
❌ Data not collected: source code, credentials, personal content.
✅ Data storage: exclusively on the user's machine.
❌ No network transmission or analytics services.
✅ Fully transparent, open-source implementation.
Organizational users are responsible for ensuring internal compliance with data retention policies.
To cease data collection → disable or uninstall the extension.