IDE Telemetry
PanDev Metrics captures IDE activity through dedicated plugins, delivering precise insight into work on corporate projects.
⚠️ Security & Privacy
Only work-related IDE activity is collected.
- ❌ No screenshots.
- ❌ No personal projects – telemetry is limited to approved Git repositories.
- ✅ IDE-only – other applications stay out of scope.
- ✅ Transparent – developers can review the data being shared.
Plugin Overview
See the Plugins section for installation and setup guides:
- IntelliJ IDEA plugin – deep integration with JVM projects.
- VS Code plugin – broad language coverage.
- Other IDEs – extensible architecture for additional tools.
Event Structure
Example payload:
[
{
"timestamp": 1742567259.3460,
"project": "pandev-metrics-partners-service",
"module": "merchant-service",
"language": "JAVA",
"gitPath": "pandev/metrics/services/pandev-metrics-partners-service",
"gitBranch": "hotfix/PDM-418",
"fileName": "CompanyRepository.java",
"ide": "IntelliJ IDEA 2024.1.3",
"lineCount": 189,
"lineNumber": 153,
"cursorPosition": 52
}
]
Field reference:
| Field | Type | Description |
|---|---|---|
timestamp | Float | Unix timestamp of the event. |
project | String | Corporate project name. |
module | String | Module within the project. |
language | String | Programming language (JAVA, PYTHON, etc.). |
gitPath | String | Path inside the corporate Git repository. |
gitBranch | String | Active Git branch. |
fileName | String | File currently in focus. |
ide | String | IDE name and version. |
lineCount | Integer | Total number of lines in the file. |
lineNumber | Integer | Line number of the caret. |
cursorPosition | Integer | Position of the caret within the line. |
Task Matching
Plugins automatically relate IDE activity to tracker issues by inspecting branch names.
How it works:
- Track the active Git branch.
- Apply regex patterns (
TASK-23,feature/PDM-1052, etc.). - Lookup the corresponding issue in Jira/GitLab if integrations are enabled.
- Attribute all activity in the branch to the identified task.
Benefits:
- Automatic linkage without manual input.
- Accurate time accounting per task.
- Full transparency for leads and managers.
- Better effort estimation for future work.
Offline Mode & Reliability
Plugins guarantee delivery even when developers work offline.
Continuous Collection
- Operate without internet access.
- Store events in a local cache.
- Run unobtrusively in the background.
Automatic Sync
- Monitor connectivity to PanDev Metrics Core.
- Sync cached events as soon as the server is reachable.
- Send data in batches to minimise overhead.
Reliability Guarantees
- Local cache retained until delivery is confirmed.
- Automatic retries on failure.
- Integrity checks to validate successful transfer.
- Visible sync status for developers.
Example flow:
Day 1 (offline):
- 09:00 Opened UserService.java
- 10:30 Working in branch feature/auth
- 12:00 Commit created
- All events cached locally
Day 2 (online):
- 09:00 Connection restored
- 09:01 Plugin uploads cached data
- 09:02 Delivery confirmed
Result: Data is never lost, and teams get a complete picture of engineering activity regardless of network conditions.