changeset 46:d62f4755a7d0

a teeny metrics server
author drewp@bigasterisk.com
date Wed, 14 Feb 2024 19:44:30 -0800
parents e1db51416e73
children fcc97d3c0a58
files .hgignore file-count/file_count.py
diffstat 2 files changed, 21 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/.hgignore	Wed Feb 14 19:42:55 2024 -0800
+++ b/.hgignore	Wed Feb 14 19:44:30 2024 -0800
@@ -1,4 +1,4 @@
 __pypackages__
-rules/build/
 .pdm-python
 .vscode
+.venv
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/file-count/file_count.py	Wed Feb 14 19:44:30 2024 -0800
@@ -0,0 +1,20 @@
+import http.server
+import socketserver
+import os
+import sys
+
+interface, port, dir, metric_name = sys.argv[1:]
+
+
+class Web(http.server.SimpleHTTPRequestHandler):
+
+    def do_GET(self):
+        files_count = len(os.listdir(dir))
+        self.send_response(200)
+        self.send_header('Content-type', 'text/plain')
+        self.end_headers()
+        self.wfile.write(f'{metric_name} {files_count}'.encode())
+
+
+with socketserver.TCPServer((interface, int(port)), Web) as httpd:
+    httpd.serve_forever()