diff --git a/feeder.py b/feeder.py index a006fd8..a4e8faa 100644 --- a/feeder.py +++ b/feeder.py @@ -1,13 +1,15 @@ import sys import signal import logging -from os.path import expanduser -sys.path.append(expanduser('~')) +import os +from os.path import expanduser, isdir, join +sys.path.append('/sq_sw/linse') import socket from streams import EventStream from nicoscache import NicosStream from secop import ScanStream, ScanReply, TrySecopConnect, send_fake_udp from seinflux import SEHistory +from normalizeuri import normalizeuri from servicemanager import FrappyManager @@ -22,7 +24,9 @@ Usage: python feeder.py uri [device] [instrument] """ -logging.basicConfig(filename='logfile.log', filemode='w', level=logging.INFO, + +frappylog = os.environ.get('FRAPPY_LOGDIR', expanduser('~/frappylog')) +logging.basicConfig(filename=join(frappylog, 'feeder.log'), filemode='w', level=logging.INFO, format='%(asctime)s %(levelname)s %(message)s') @@ -32,7 +36,7 @@ def main(dbname=None, access='write'): db = SEHistory(dbname, access=access) db.enable_write_access() - host = socket.gethostname().split('.')[0] + host = normalizeuri(socket.gethostname().split('.')[0]) fm = FrappyManager() fm.get_info() # create map to get instrument from internal stream uri @@ -55,7 +59,7 @@ def main(dbname=None, access='write'): running = [True] - def handler(self, num, frame): + def handler(num, frame): running.clear() signal.signal(signal.SIGTERM, handler) diff --git a/seinflux.py b/seinflux.py index 4dc13af..b63c692 100644 --- a/seinflux.py +++ b/seinflux.py @@ -405,6 +405,7 @@ class SEHistory(InfluxDBWrapper): tags['stream'] = stream if flag: tags['instrument'] = instrument + # logging.info('set_instrument %r', tags) self._add_point('_stream_', 'on', flag, ts, tags) def remove_experiment(self, stream, ts=None, **tags): @@ -426,4 +427,5 @@ class SEHistory(InfluxDBWrapper): def add_stream(self, value, tags, key, ts): if value == '': # unknown instrument value = self.instrument or self.instrument_by_stream.get(key, '0') + # logging.info('key %s -> ins %s', key, value) self.set_instrument(key, value, ts, **tags) diff --git a/t.py b/t.py index 1da870b..8484ce5 100644 --- a/t.py +++ b/t.py @@ -12,7 +12,16 @@ ETERNITY = 1e10 # token = "zqDbTcMv9UizfdTj15Fx_6vBetkM5mXN56EE9CiDaFsh7O2FFWZ2X4VwAAmdyqZr3HbpIr5ixRju07-oQmxpXw==" -db = SEHistory(*sys.argv[1:]) # arguments: database, access +access = 'write' +dbname = None + +for arg in sys.argv[1:]: + if arg in ('readonly', 'write', 'create'): + access = arg + else: + dbname = arg + +db = SEHistory(dbname, access=access) print(""" qry([start], [stop], [interval=...,] [last=True,] [columns=[...],] [=, ] ...)