-
-
Save ThomDietrich/ff836dbe0f0eaa2c5270a846a963893b to your computer and use it in GitHub Desktop.
Pump a sine wave signal as data points into a influxdb database
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
# A little script to send test data to an influxdb installation | |
# Attention, the non-core library 'requests' is used. You'll need to install it first: | |
# http://docs.python-requests.org/en/master/user/install/ | |
import json | |
import math | |
import requests | |
import sys | |
from time import sleep | |
IP = "192.168.0.2" # The IP of the machine hosting your influxdb instance | |
DB = "test" # The database to write to, has to exist | |
USER = "user" # The influxdb user to authenticate with | |
PASSWORD = "password123" # The password of that user | |
TIME = 1 # Delay in seconds between two consecutive updates | |
STATUS_MOD = 5 # The interval in which the updates count will be printed to your console | |
n = 0 | |
while True: | |
for d in range(0, 360): | |
v = "sine_wave value={}".format(math.sin(math.radians(d))) | |
## without autentication | |
#r = requests.post("http://{}:8086/write?db={}".format(IP, DB), data=v) | |
## with autentication | |
r = requests.post("http://{}:8086/write?db={}".format(IP, DB), auth=(USER, PASSWORD), data=v) | |
if r.status_code != 204: | |
print("Failed to add point to influxdb ({}) - aborting.".format(r.status_code)) | |
sys.exit(1) | |
n += 1 | |
sleep(TIME) | |
if n % STATUS_MOD == 0: | |
print('{} points inserted.'.format(n)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Its working!
Great Job!!
Thank you (also for your guide, its helping great)