From 12d5a054f592971da4188b347102c5602934d077 Mon Sep 17 00:00:00 2001 From: Olli Graf Date: Tue, 15 Aug 2023 15:06:51 +0200 Subject: [PATCH] logging statt print() --- db.ini.sample | 5 +++++ wstat.py | 37 ++++++++++++++++++++++++------------- 2 files changed, 29 insertions(+), 13 deletions(-) create mode 100644 db.ini.sample diff --git a/db.ini.sample b/db.ini.sample new file mode 100644 index 0000000..05d8742 --- /dev/null +++ b/db.ini.sample @@ -0,0 +1,5 @@ +[weatherdb] +host=database +user=ploeger +password= +database=weather diff --git a/wstat.py b/wstat.py index 0991f8b..8f712f6 100755 --- a/wstat.py +++ b/wstat.py @@ -1,37 +1,48 @@ #!/usr/bin/env python3 import time +import configparser +import logging import bme280 try: import smbus2 -except ImportError: +except ImportError: # Wenn smbus2 nicht zu importieren ist, nehmen wir smbus from smbus import SMBus import mysql.connector -print("""all-values.py - Read temperature, pressure, and humidity +port = 1 +adresse_bme280 = 0x76 +adresse_lcd1602 = 0x25 -Press Ctrl+C to exit! +logging.basicConfig( format='%(asctime)s [%(levelname)s] %(funcName)s: %(message)s', level=logging.DEBUG) -""") -port = 1 -adresse = 0x76 -# Initialise the BME280 -bus = smbus2.SMBus(port) -calibration_params = bme280.load_calibration_params(bus, adresse) + +def info(msg): + logging.info(msg) + +def debug(msg): + logging.debug(msg) # Datenbankverbindung herstellen. -mydb = mysql.connector.connect(host='database', user='ploeger',password='',database='weather') +config = configparser.ConfigParser() +config.read('db.ini') +mydb = mysql.connector.connect(host=config['weatherdb']['host'], user=config['weatherdb']['user'],password=config['weatherdb']['password'],database =config['weatherdb']['database']) mycursor = mydb.cursor() +debug('Datenverbindung hergestellt.') -print(mydb) +# BME280 initialisieren +bus = smbus2.SMBus(port) +calibration_params = bme280.load_calibration_params(bus, adresse_bme280) +debug('Sensor kalibriert.') while True: - data = bme280.sample(bus, adresse, calibration_params) + data = bme280.sample(bus, adresse_bme280, calibration_params) + temperature = data.temperature pressure = data.pressure humidity = data.humidity - print('{:05.2f}°C {:05.2f}hPa {:05.2f}%'.format(temperature, pressure, humidity)) + info('{:05.2f}°C {:05.2f}hPa {:05.2f}%'.format(temperature, pressure, humidity)) sql = 'INSERT into stats (datum,temperature, humidity, pressure) VALUES(now(), %s, %s, %s)' val = (temperature, humidity, pressure)