More cleanup.
authorScott Gasch <[email protected]>
Mon, 15 Nov 2021 18:23:03 +0000 (10:23 -0800)
committerScott Gasch <[email protected]>
Mon, 15 Nov 2021 18:23:03 +0000 (10:23 -0800)
bellevue_city_calendar_renderer.py
camera_trigger.py
decorators.py
google_news_rss_renderer.py
kiosk.py
utils.py

index c55480b6d35d2a8fbf175e1a62dc954e11bf417e..99ad58f2f0dd9ee05ccabbc85ae681c4e66860b1 100644 (file)
@@ -69,11 +69,13 @@ class bellevue_city_calendar_renderer(gnrss.generic_news_rss_renderer):
         return delta < 0
 
     def do_details(self) -> bool:
+        logger.debug('No Bellevue city calendar items are interesting for articles...')
         return False
 
     def item_is_interesting_for_article(
         self, title: str, description: str, item: xml.etree.ElementTree.Element
     ) -> bool:
+        logger.debug('No Bellevue city calendar items are interesting for articles...')
         return False
 
 
index 0e9ac6d8752860b8b5a22a3278749b33feda336d..41dc809c300b844b4289acabc2ed3cbe1638e845 100644 (file)
@@ -56,16 +56,18 @@ class any_camera_trigger(trigger.trigger):
             for camera in camera_list:
                 filename = f"/timestamps/last_camera_motion_{camera}"
                 ts = os.stat(filename).st_ctime
-                if ts != self.last_trigger_timestamp[camera] and (now - ts) < 10:
-                    print("Camera: %s, age %s" % (camera, (now - ts)))
+                age = now - ts
+                if ts != self.last_trigger_timestamp[camera] and age < 10:
+                    print(f'Camera: {camera}, age {age}')
                     self.last_trigger_timestamp[camera] = ts
                     num_cameras_with_recent_triggers += 1
+
                     self.triggers_in_the_past_seven_min[camera] = 0
                     filename = f"/timestamps/camera_motion_history_{camera}"
                     with open(filename, "r") as f:
                         contents = f.readlines()
                     for x in contents:
-                        x.strip()
+                        x = x.strip()
                         age = now - int(x)
                         if age < (60 * 7):
                             self.triggers_in_the_past_seven_min[camera] += 1
@@ -81,6 +83,7 @@ class any_camera_trigger(trigger.trigger):
                         self.triggers_in_the_past_seven_min[camera] <= 4
                         or num_cameras_with_recent_triggers > 1
                     ):
+                        age = now - self.last_trigger_timestamp[camera]
                         priority = self.choose_priority(camera, int(age))
                         print(
                             f"{utils.timestamp()}: *** {camera}[{priority}] CAMERA TRIGGER ***"
index ba2e53d4b594a27f21a06a77ca8242b92c2e8b9b..9995bd67ecae0479fdd3c2353eb0da05e5766b7a 100644 (file)
@@ -2,18 +2,18 @@
 
 from datetime import datetime
 import functools
+import logging
+
+
+logger = logging.getLogger(__file__)
 
 
 def invocation_logged(func):
     @functools.wraps(func)
     def wrapper(*args, **kwargs):
-        now = datetime.now()
-        timestamp = now.strftime("%d-%b-%Y (%H:%M:%S.%f)")
-        print("%s(%s): Entered function" % (func.__name__, timestamp))
+        logger.debug(f'Entered {func.__qualname__}')
         ret = func(*args, **kwargs)
-        now = datetime.now()
-        timestamp = now.strftime("%d-%b-%Y (%H:%M:%S.%f)")
-        print("%s(%s): Exited function" % (func.__name__, timestamp))
+        logger.debug(f'Exited {func.__qualname__}')
         return ret
 
     return wrapper
index 7317e3e95978b71c98ff6dc850071bbddbb2a212..c7442707b623aa97d6493306b1b675996accb5d0 100644 (file)
@@ -33,10 +33,10 @@ class google_news_rss_renderer(generic_news_rss_renderer.generic_news_rss_render
 
     def find_description(self, item: xml.etree.ElementTree.Element) -> str:
         descr = item.findtext("description")
-        source = item.findtext("source")
         if descr is not None:
+            source = item.findtext("source")
             if source is not None:
-                descr = descr + " (source)"
+                descr = descr + f" ({source})"
         else:
             descr = ""
         return descr
index 8f6154273a00045c2a297d5142a58bd407a72774..514fbac69ea64f32a08070a4d1232881fe8e290a 100755 (executable)
--- a/kiosk.py
+++ b/kiosk.py
@@ -548,12 +548,12 @@ def renderer_update_internal_stats_page(
         render_counts: collections.Counter,
         render_times: Dict[str, np.array],
 ) -> None:
-    logger.debug(
-        f'renderer: Updating internal render statistics page.'
+    logger.info(
+        'renderer: Updating internal render statistics page.'
     )
     with file_writer.file_writer(constants.render_stats_pagename) as f:
         f.write(
-f'''
+'''
 <CENTER>
 <TABLE BORDER=0 WIDTH=95%>
     <TR>
@@ -611,6 +611,7 @@ def thread_invoke_renderers() -> None:
         for r in renderer_catalog.get_renderers():
             name = r.get_name()
             now = time.time()
+            logger.info(f'renderer: Invoking {name}\'s render method.')
             try:
                 r.render()
             except Exception as e:
@@ -632,7 +633,7 @@ def thread_invoke_renderers() -> None:
             times = np.insert(times, 0, delta)
             render_times[name] = times
             if delta > 1.0:
-                hdr = f'renderer: '
+                hdr = 'renderer: '
                 logger.warning(
 f'''
 {hdr} Warning: {name}'s rendering took {delta:5.2f}s.
@@ -642,7 +643,7 @@ f'''
 
         # Update a page about internal stats of renderers.
         renderer_update_internal_stats_page(last_render, render_counts, render_times)
-        logger.debug('renderer: having a little nap...')
+        logger.info('renderer: having a little nap...')
         time.sleep(constants.render_period_sec)
 
 
index e9c6edd1853640816e0a3ad46c9dec8441a27758..98238a1f43e7ec9133122d0f8e0262b5812603b1 100644 (file)
--- a/utils.py
+++ b/utils.py
@@ -1,12 +1,16 @@
 #!/usr/bin/env python3
 
 import time
+import logging
 import os
 from datetime import datetime
 
 import constants
 
 
+logger = logging.getLogger(__file__)
+
+
 def timestamp() -> str:
     t = datetime.fromtimestamp(time.time())
     return t.strftime("%d/%b/%Y:%H:%M:%S%Z")
@@ -20,6 +24,7 @@ def describe_age_of_file(filename: str) -> str:
         age = int(age)
         return describe_duration(age)
     except Exception as e:
+        logger.exception(e)
         return "?????"
 
 
@@ -31,6 +36,7 @@ def describe_age_of_file_briefly(filename: str) -> str:
         age = int(age)
         return describe_duration_briefly(age)
     except Exception as e:
+        logger.exception(e)
         return "?????"
 
 
@@ -82,7 +88,9 @@ def datetime_to_minute_number(dt: datetime) -> int:
 
 
 def minute_number_to_time_string(minute_num: int) -> str:
-    """Convert minute number from start of day into hour:minute am/pm string."""
+    """Convert minute number from start of day into hour:minute am/pm
+    string."""
+
     hour = minute_num // 60
     minute = minute_num % 60
     ampm = "a"