A collection of (PowerShell) scripts around WhatPulse to keep your statistics private - the scripts transfer them to a (private) InfluxDB database.
This only works on windows!
WhatPulse is a great tool to capture mainly your keyboard and mouse usage statistics, I use it for many years. Although I don't not trust them, I wanted to have my statistics with me, and only me. Unfortunately WhatPulse does not have a fully capable local API, but records everything in a SQLite database - these scripts querying this database directly and pushes everything to a InfluxDB database. Perfect to visualize the result with Grafana, for example.
Not everything WhatPulse collects is currently also handled by these scripts - supported metrics:
- Application usage (per application)
- PC boot times
- Keyboard key presses
- Mouse clicks
Contains data about the last sync, a text file per computer with the last sync timestamp as content
Third party dependencies (SQLite and so on)
Predefined SQL queries used by whatpulse2influxdb.ps1
The default/example config file, copy it to data/config.ps1
and edit there to your needs
Creates a scheduled task to execute whatpulse2influxdb_hidden.vbs
when the computer is idle
Restricts internet access for WhatPulse completely
The main scripts, this reads the database and pushes the statistics to InfluxDB
whatpulse2influxdb_hidden.vbs
Just a wrapper around whatpulse2influxdb.ps1
to hide the PowerShell window, this is also used by the scheduled task created by create_scheduled_task.bat
Just unpack the latest release, copy config-dist.ps1
to data/config.ps1
, edit it to your needs, ensure that the data
directory is writable and you're ready to go - just start whatpulse2influxdb.ps1
as explained above.
Alternatively clone this repository.
Coming soon...
The MIT License (MIT)