Mercurial > code > home > repos > light9
changeset 2052:cba85338def9
port to metrics()
author | drewp@bigasterisk.com |
---|---|
date | Fri, 13 May 2022 01:07:36 -0700 |
parents | bfee787d7b5c |
children | b7a3dff5514d |
files | light9/collector/output.py |
diffstat | 1 files changed, 6 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/light9/collector/output.py Fri May 13 01:07:15 2022 -0700 +++ b/light9/collector/output.py Fri May 13 01:07:36 2022 -0700 @@ -167,8 +167,6 @@ class Udmx(BackgroundLoopOutput): - _reconnections = scales.IntStat('reconnections') - _connected = scales.IntStat('connected') def __init__(self, uri, bus, address, lastDmxChannel, rate=22): self.bus = bus @@ -177,24 +175,20 @@ self.dev = None super().__init__(uri, rate=rate) - self._errStats = scales.collection(self.statPath + '/write', - scales.IntStat('overflow'), - scales.IntStat('ioError'), - scales.IntStat('pipeError')) self.reconnect() def shortId(self) -> str: return super().shortId() + f'_bus={self.bus}' def reconnect(self): - self._connected = 0 + metrics('connected', output=self.shortId()).set(0) from pyudmx import pyudmx self.dev = pyudmx.uDMXDevice() if not self.dev.open(bus=self.bus, address=self.address): raise ValueError("dmx open failed") log.info(f'opened {self.dev}') - self._connected = 1 - self._reconnections += 1 + metrics('connected', output=self.shortId()).set(1) + metrics('reconnections', output=self.shortId()).inc() #def update(self, buf:bytes): # self._write(buf) @@ -232,15 +226,15 @@ except usb.core.USBError as e: # not in main thread if e.errno == 75: - self._errStats.overflow += 1 + metrics('write_overflow', output=self.shortId()).inc() return if e.errno == 5: # i/o err - self._errStats.ioError += 1 + metrics('write_io_error', output=self.shortId()).inc() return if e.errno == 32: # pipe err - self._errStats.pipeError += 1 + metrics('write_pipe_error', output=self.shortId()).inc() return msg = 'usb: sending %s bytes to %r; error %r' % (len(buf),