Skip to content

Instantly share code, notes, and snippets.

@nordicdyno
Created September 25, 2017 21:55
Show Gist options
  • Save nordicdyno/061a50dc29336dc6a60d4d0470edd151 to your computer and use it in GitHub Desktop.
Save nordicdyno/061a50dc29336dc6a60d4d0470edd151 to your computer and use it in GitHub Desktop.
from socket import socket, AF_INET, SOCK_DGRAM
import json
class StatsdClient(object):
def __init__(self, host='localhost', port=8125):
self.addr = (host, port)
self.udp_sock = socket(AF_INET, SOCK_DGRAM)
def gauge(self, name, value):
metric = "{0}:{1}|{2}".format(name, value, "g")
print "send " + metric
self.udp_sock.sendto(metric, self.addr)
def main():
c = StatsdClient(port=9125)
metrics = [
{"name": "metric_name1", "value": 1.1},
{"name": "metric-name2", "value": 2.5},
{"name": "metric.name3", "value": 3},
]
for m in metrics:
c.gauge(m["name"], m["value"])
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment