changeset 1443:99540f1a11f7

move bnode id optimization to its own file. more logging cleanups Ignore-this: 1787f7268eafa52e7c094e327333021c darcs-hash:3cf4550608b04f4ff91a76a3a00b129f0d9bcccb
author drewp <drewp@bigasterisk.com>
date Mon, 12 Aug 2019 16:46:52 -0700
parents 759841548982
children 4afb1830bb5e
files service/piNode/piNode.py service/piNode/rdflib_pi_opt.py
diffstat 2 files changed, 20 insertions(+), 19 deletions(-) [+]
line wrap: on
line diff
--- a/service/piNode/piNode.py	Mon Aug 12 10:14:45 2019 -0700
+++ b/service/piNode/piNode.py	Mon Aug 12 16:46:52 2019 -0700
@@ -14,23 +14,13 @@
 
 from patchablegraph import PatchableGraph, CycloneGraphHandler, CycloneGraphEventsHandler
 from cycloneerr import PrettyErrorHandler
-
+from standardservice.logsetup import log, verboseLogging
 from rdfdb.rdflibpatch import inContext
 from rdfdb.patch import Patch
-
-try:
-    import pigpio
-except ImportError:
-    class pigpio(object):
-        @staticmethod
-        def pi():
-            return None
+from rdflib_pi_opt import patchRandid
+from export_to_influxdb import InfluxExporter
 
 import devices
-from export_to_influxdb import InfluxExporter
-
-log = logging.getLogger()
-logging.getLogger('serial').setLevel(logging.WARN)
 
 ROOM = Namespace('http://projects.bigasterisk.com/room/')
 HOST = Namespace('http://bigasterisk.com/ruler/host/')
@@ -301,12 +291,7 @@
     --ow         Just report onewire device URIs and readings, then exit.
     --hub=HOST   Hostname for etc3 and oneshot posts. [default: bang.vpn-home.bigasterisk.com]
     """)
-    log.setLevel(logging.WARN)
-    if arg['-v']:
-        from twisted.python import log as twlog
-        twlog.startLogging(sys.stdout)
-
-        log.setLevel(logging.DEBUG)
+    verboseLogging(arg['-v'])
 
     if arg['--ow']:
         log.setLevel(logging.INFO)
@@ -314,6 +299,8 @@
             print(stmt)
         return
 
+    patchRandid()
+
     masterGraph = PatchableGraph()
     config = Config(masterGraph, arg['--hub'])
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/service/piNode/rdflib_pi_opt.py	Mon Aug 12 16:46:52 2019 -0700
@@ -0,0 +1,14 @@
+import rdflib.plugins.memory
+
+
+def patchRandid():
+    """
+    I'm concerned urandom is slow on raspberry pi, and I'm adding to
+    graphs a lot. Unclear what the ordered return values might do to
+    the balancing of the graph.
+    """
+    _id_serial = [1000]
+    def randid():
+        _id_serial[0] += 1
+        return _id_serial[0]
+    rdflib.plugins.memory.randid = randid