c99koder / personal-influxdb

Import data from various APIs into InfluxDB
Apache License 2.0
263 stars 36 forks source link
fitbit fitbit-api foursquare foursquare-api grafana grafana-dashboard hacktoberfest hacktoberfest-accepted influxdb instagram instagram-api python3 rescuetime steam steam-api

Personal-InfluxDB

Import personal data from various APIs into InfluxDB

Configuration

Open config.py and set your API credentials and InfluxDB server configuration at the top of the file

Usage

Check your Python version and make sure version 3.7 or newer is installed on your system:

$ python3 --version

Install required python3 modules:

$ pip3 install pytz influxdb requests requests-cache instaloader trakt.py publicsuffix2 colorlog bs4

Run each Python script from the terminal and it will insert the most recent data into InfluxDB.

Notes

Grafana Dashboards

The grafana folder contains json files for various example dashboards. Most dashboards require the grafana-piechart-panel plugin, and the Foursquaure panel also requires the panodata grafana-map-panel plugin:

$ grafana-cli plugins install grafana-piechart-panel
$ grafana-cli --pluginUrl grafana-cli --pluginUrl https://github.com/panodata/grafana-map-panel/releases/download/0.15.0/grafana-map-panel-0.15.0.zip plugins install grafana-map-panel plugins install grafana-map-panel

RescueTime dashboard

Grafana RescueTime Screenshot

Fitbit dashboard

Grafana Fitbit Screenshot

Gaming dashboard

Grafana Gaming Screenshot

Foursquare dashboard

Grafana Foursquare Screenshot

Instagram dashboard

Grafana Instagram Screenshot

Todoist dashboard

Grafana Todoist Screenshot

GitHub dashboard

Grafana GitHub Screenshot

Trakt.tv dashboard

Grafana Trakt.tv Screenshot

EDSM dashboard

Grafana EDSM Screenshot

Exist dashboard

Grafana Exist Screenshot

FsHub.io dashboard

Grafana FsHub.io Screenshot

License

Copyright (C) 2022 Sam Steele. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.