add wsprnet metrics
This commit is contained in:
parent
1b36baad88
commit
a65f15869b
@ -2,6 +2,7 @@ from owrx.reporting import Reporter
|
||||
from owrx.version import openwebrx_version
|
||||
from owrx.config import Config
|
||||
from owrx.locator import Locator
|
||||
from owrx.metrics import Metrics, CounterMetric
|
||||
from queue import Queue, Full
|
||||
from urllib import request, parse
|
||||
import threading
|
||||
@ -10,6 +11,7 @@ from datetime import datetime, timezone
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class Worker(threading.Thread):
|
||||
def __init__(self, queue: Queue):
|
||||
self.queue = queue
|
||||
@ -62,12 +64,18 @@ class WsprnetReporter(Reporter):
|
||||
# single worker
|
||||
Worker(self.queue).start()
|
||||
|
||||
# metrics
|
||||
metrics = Metrics.getSharedInstance()
|
||||
self.spotCounter = CounterMetric()
|
||||
metrics.addMetric("wsprnet.spots", self.spotCounter)
|
||||
|
||||
def stop(self):
|
||||
pass
|
||||
|
||||
def spot(self, spot):
|
||||
try:
|
||||
self.queue.put(spot, block=False)
|
||||
self.spotCounter.inc()
|
||||
except Full:
|
||||
logger.warning("WSPRNet Queue overflow, one spot lost")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user