From: Ciprian Manea Date: Mon, 5 Aug 2019 18:17:29 +0000 (+0300) Subject: improved logging with timestamps (instead of print) X-Git-Url: https://zdv2.bktei.com/gitweb/EVA-2020-02-2.git/commitdiff_plain/10b73e181c132294ea7ab9ee8b0ddc1fb2670781?ds=sidebyside;hp=69294f3c5533bbc58457624ee3e1da1a7b3201b0 improved logging with timestamps (instead of print) --- diff --git a/examples/adc.py b/examples/adc.py index c4cf45c..82bda41 100755 --- a/examples/adc.py +++ b/examples/adc.py @@ -2,8 +2,14 @@ import time from enviroplus import gas +import logging -print("""adc.py - Print readings from the MICS6814 Gas sensor. +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""adc.py - Print readings from the MICS6814 Gas sensor. Press Ctrl+C to exit! @@ -15,7 +21,7 @@ gas.set_adc_gain(4.096) try: while True: readings = gas.read_all() - print(readings) + logging.info(readings) time.sleep(1.0) except KeyboardInterrupt: pass diff --git a/examples/all-in-one-no-pm.py b/examples/all-in-one-no-pm.py index 962f627..5486012 100755 --- a/examples/all-in-one-no-pm.py +++ b/examples/all-in-one-no-pm.py @@ -13,8 +13,14 @@ from subprocess import PIPE, Popen from PIL import Image from PIL import ImageDraw from PIL import ImageFont +import logging -print("""all-in-one.py - Displays readings from all of Enviro plus' sensors +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""all-in-one.py - Displays readings from all of Enviro plus' sensors Press Ctrl+C to exit! """) @@ -58,7 +64,7 @@ def display_text(variable, data, unit): - min(values[variable]) + 1) for v in values[variable]] # Format the variable name and value message = "{}: {:.1f} {}".format(variable[:4], data, unit) - print(message) + logging.info(message) draw.rectangle((0, 0, WIDTH, HEIGHT), (255, 255, 255)) for i in range(len(colours)): # Convert the values to colours from red to blue diff --git a/examples/all-in-one.py b/examples/all-in-one.py index 6343951..8784090 100755 --- a/examples/all-in-one.py +++ b/examples/all-in-one.py @@ -14,8 +14,14 @@ from subprocess import PIPE, Popen from PIL import Image from PIL import ImageDraw from PIL import ImageFont +import logging -print("""all-in-one.py - Displays readings from all of Enviro plus' sensors +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""all-in-one.py - Displays readings from all of Enviro plus' sensors Press Ctrl+C to exit! @@ -64,7 +70,7 @@ def display_text(variable, data, unit): - min(values[variable]) + 1) for v in values[variable]] # Format the variable name and value message = "{}: {:.1f} {}".format(variable[:4], data, unit) - print(message) + logging.info(message) draw.rectangle((0, 0, WIDTH, HEIGHT), (255, 255, 255)) for i in range(len(colours)): # Convert the values to colours from red to blue diff --git a/examples/compensated-temperature.py b/examples/compensated-temperature.py index 2733f56..6a9c115 100755 --- a/examples/compensated-temperature.py +++ b/examples/compensated-temperature.py @@ -9,7 +9,14 @@ try: except ImportError: from smbus import SMBus -print("""compensated-temperature.py - Use the CPU temperature +import logging + +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""compensated-temperature.py - Use the CPU temperature to compensate temperature readings from the BME280 sensor. Method adapted from Initial State's Enviro pHAT review: https://medium.com/@InitialState/tutorial-review-enviro-phat-for-raspberry-pi-4cd6d8c63441 @@ -42,5 +49,5 @@ while True: avg_cpu_temp = sum(cpu_temps) / float(len(cpu_temps)) raw_temp = bme280.get_temperature() comp_temp = raw_temp - ((avg_cpu_temp - raw_temp) / factor) - print("Compensated temperature: {:05.2f} *C".format(comp_temp)) + logging.info("Compensated temperature: {:05.2f} *C".format(comp_temp)) time.sleep(1.0) diff --git a/examples/gas.py b/examples/gas.py index faf6eac..2f84944 100755 --- a/examples/gas.py +++ b/examples/gas.py @@ -2,8 +2,14 @@ import time from enviroplus import gas +import logging -print("""gas.py - Print readings from the MICS6814 Gas sensor. +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""gas.py - Print readings from the MICS6814 Gas sensor. Press Ctrl+C to exit! @@ -12,7 +18,7 @@ Press Ctrl+C to exit! try: while True: readings = gas.read_all() - print(readings) + logging.info(readings) time.sleep(1.0) except KeyboardInterrupt: pass diff --git a/examples/lcd.py b/examples/lcd.py index aa0e193..7e50c94 100755 --- a/examples/lcd.py +++ b/examples/lcd.py @@ -2,8 +2,14 @@ import ST7735 from PIL import Image, ImageDraw, ImageFont +import logging -print("""lcd.py - Hello, World! example on the 0.96" LCD. +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""lcd.py - Hello, World! example on the 0.96" LCD. Press Ctrl+C to exit! diff --git a/examples/light.py b/examples/light.py index 216477a..3442fb4 100755 --- a/examples/light.py +++ b/examples/light.py @@ -2,8 +2,14 @@ import time import ltr559 +import logging -print("""light.py - Print readings from the LTR559 Light & Proximity sensor. +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""light.py - Print readings from the LTR559 Light & Proximity sensor. Press Ctrl+C to exit! @@ -13,7 +19,7 @@ try: while True: lux = ltr559.get_lux() prox = ltr559.get_proximity() - print("""Light: {:05.02f} Lux + logging.info("""Light: {:05.02f} Lux Proximity: {:05.02f} """.format(lux, prox)) time.sleep(1.0) diff --git a/examples/luftdaten.py b/examples/luftdaten.py index c5b0387..dd6e967 100755 --- a/examples/luftdaten.py +++ b/examples/luftdaten.py @@ -12,7 +12,14 @@ try: except ImportError: from smbus import SMBus -print("""luftdaten.py - Reads temperature, pressure, humidity, +import logging + +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""luftdaten.py - Reads temperature, pressure, humidity, PM2.5, and PM10 from Enviro plus and sends data to Luftdaten, the citizen science air quality project. @@ -162,16 +169,16 @@ font_size = 16 font = ImageFont.truetype("fonts/Asap/Asap-Bold.ttf", font_size) # Display Raspberry Pi serial and Wi-Fi status -print("Raspberry Pi serial: {}".format(get_serial_number())) -print("Wi-Fi: {}\n".format("connected" if check_wifi() else "disconnected")) +logging.info("Raspberry Pi serial: {}".format(get_serial_number())) +logging.info("Wi-Fi: {}\n".format("connected" if check_wifi() else "disconnected")) # Main loop to read data, display, and send to Luftdaten while True: try: values = read_values() - print(values) + logging.info(values) resp = send_to_luftdaten(values, id) - print("Response: {}\n".format("ok" if resp else "failed")) + logging.info("Response: {}\n".format("ok" if resp else "failed")) display_status() except Exception as e: - print(e) + logging.info(e) diff --git a/examples/particulates.py b/examples/particulates.py index e71ca5d..9aa9c37 100755 --- a/examples/particulates.py +++ b/examples/particulates.py @@ -2,8 +2,14 @@ import time from pms5003 import PMS5003, ReadTimeoutError +import logging -print("""particulates.py - Print readings from the PMS5003 particulate sensor. +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""particulates.py - Print readings from the PMS5003 particulate sensor. Press Ctrl+C to exit! @@ -16,7 +22,7 @@ try: while True: try: readings = pms5003.read() - print(readings) + logging.info(readings) time.sleep(1.0) except ReadTimeoutError: pms5003 = PMS5003() diff --git a/examples/weather.py b/examples/weather.py index 17aba20..5036021 100755 --- a/examples/weather.py +++ b/examples/weather.py @@ -8,7 +8,14 @@ try: except ImportError: from smbus import SMBus -print("""weather.py - Print readings from the BME280 weather sensor. +import logging + +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""weather.py - Print readings from the BME280 weather sensor. Press Ctrl+C to exit! @@ -21,7 +28,7 @@ while True: temperature = bme280.get_temperature() pressure = bme280.get_pressure() humidity = bme280.get_humidity() - print("""Temperature: {:05.2f} *C + logging.info("""Temperature: {:05.2f} *C Pressure: {:05.2f} hPa Relative humidity: {:05.2f} % """.format(temperature, pressure, humidity))