]> jturnerusa.dev Git - website/commitdiff
stats.py: include runtime in output
authorJohn Turner <jturner.usa@gmail.com>
Wed, 16 Jul 2025 01:05:25 +0000 (21:05 -0400)
committerJohn Turner <jturner.usa@gmail.com>
Wed, 16 Jul 2025 01:05:25 +0000 (21:05 -0400)
stats.py

index 012765f261f6b5f62ccac7fbc2445e4d97c72511..544e8fa4bd9e44a52ae9501b68f5e3ed985bea04 100755 (executable)
--- a/stats.py
+++ b/stats.py
@@ -5,6 +5,7 @@ from datetime import datetime
 from pathlib import Path
 from dataclasses import dataclass
 from jinja2 import Environment
+from time import time
 
 GET_PATTERN = r"^([^ ]+) ([^ ]+) - \[(.*)\] \"GET ([^ ]*)"
 
@@ -22,7 +23,9 @@ TEMPLATE="""
   <p>
      Logs start at {{ logs_start_date }} ({{ logs_days_ago }} days ago)
   </p>
-  <h2>Most visited pages</h2>
+  <p>
+     Stats generated in {{ seconds }}s
+  </p>
   <p>
     Total visits: {{ total_visits }}
   </p>
@@ -43,6 +46,8 @@ class Get:
     dest: str
     url: str
 
+start_time = time()
+
 logs_dir = Path(os.environ.get("LOGS_DIR", "/var/log/lighttpd"))
 
 log_files = [log for log in logs_dir.iterdir()
@@ -83,9 +88,12 @@ most_visited_site = sorted(urls.items(), key=lambda item: item[1])[-1][0]
 environment = Environment()
 template = environment.from_string(TEMPLATE)
 
+seconds = round(time() - start_time, 3)
+
 print("Content-Type: text/html\r\n")
 
 print(template.render(
+    seconds=seconds,
     logs_start_date=logs_start_date.ctime(),
     logs_days_ago=logs_days_ago,
     total_visits=total_visits,