Jelajahi Sumber

Make packagable

johan 9 tahun lalu
induk
melakukan
3884d1fc98
2 mengubah file dengan 19 tambahan dan 2 penghapusan
  1. 4 2
      mqtt2graphite.py
  2. 15 0
      setup.py

+ 4 - 2
mqtt2graphite.py

@@ -122,9 +122,8 @@ def on_disconnect(mosq, userdata, rc):
         logging.info("Unexpected disconnect (rc %s); reconnecting in 5 seconds" % rc)
         time.sleep(5)
 
-if __name__ == '__main__':
     
-
+def main():
     logging.info("Starting %s" % client_id)
     logging.info("INFO MODE")
     logging.debug("DEBUG MODE")
@@ -161,6 +160,7 @@ if __name__ == '__main__':
         'map'       : map,
     }
     mqttc = paho.Client(client_id, clean_session=True, userdata=userdata)
+    global mqttc
     mqttc.on_message = on_message
     mqttc.on_connect = on_connect
     mqttc.on_disconnect = on_disconnect
@@ -175,3 +175,5 @@ if __name__ == '__main__':
 
     mqttc.loop_forever()
 
+if __name__ == '__main__':
+	main()

+ 15 - 0
setup.py

@@ -0,0 +1,15 @@
+from setuptools import setup
+
+setup(
+    name='mqtt2graphite',
+    description="This program subscribes to any number of MQTT topics, extracts a value from the messages' payload and sends that off to Graphite via Carbon over a UDP socket.",
+
+    py_modules=['mqtt2graphite'],
+    install_requires=['paho-mqtt'],
+    entry_points={
+        'console_scripts': [
+            "mqtt2graphite = mqtt2graphite:main",
+        ]
+    },
+)
+