annotate file-count/file_count.py @ 60:e3151ab43579

moving scrape target configs in py, and into separate retention classes
author drewp@bigasterisk.com
date Sat, 27 Apr 2024 01:31:07 -0700
parents d62f4755a7d0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
46
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
1 import http.server
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
2 import socketserver
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
3 import os
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
4 import sys
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
5
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
6 interface, port, dir, metric_name = sys.argv[1:]
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
7
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
8
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
9 class Web(http.server.SimpleHTTPRequestHandler):
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
10
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
11 def do_GET(self):
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
12 files_count = len(os.listdir(dir))
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
13 self.send_response(200)
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
14 self.send_header('Content-type', 'text/plain')
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
15 self.end_headers()
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
16 self.wfile.write(f'{metric_name} {files_count}'.encode())
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
17
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
18
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
19 with socketserver.TCPServer((interface, int(port)), Web) as httpd:
d62f4755a7d0 a teeny metrics server
drewp@bigasterisk.com
parents:
diff changeset
20 httpd.serve_forever()