GithubHelp home page GithubHelp logo

zhaoxiaotu / personal-influxdb Goto Github PK

View Code? Open in Web Editor NEW

This project forked from c99koder/personal-influxdb

0.0 1.0 0.0 3.56 MB

Import data from various APIs into InfluxDB

License: Apache License 2.0

Python 98.38% Shell 1.62%

personal-influxdb's Introduction

Personal-InfluxDB

Import personal data from various APIs into InfluxDB

Configuration

Open each Python script 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 todoist-python trakt.py publicsuffix2

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

Notes

  • Each script is designed to write to its own InfluxDB database. Using the same database name between scripts can lead to data being unexpectedly overwritten or deleted.
  • RescueTime provides data each hour, so scheduling the script as an hourly cron job is recommended.
  • Steam provides the recent playtime over 2 weeks, so the first set of data inserted will contain 2 weeks of time. New data going forward will be more accurate as the script will calculate the time since the last run.
  • Google Play doesn't provide total play time, only achievements and last played timestamps
  • Instagram can take a very long time to download, so by default it will only fetch the 10 most recent posts. Set MAX_POSTS to 0 to download everything.
  • Access to the Todoist API requires a premium subscription

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 --pluginUrl https://packages.hiveeyes.org/grafana/grafana-map-panel/grafana-map-panel-0.8.0.zip 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) 2020 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.

personal-influxdb's People

Contributors

c99koder avatar jleighton avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.