6 Home
ixyd edited this page 4 years ago

Designfragen

what about callsign cache

beste idee ever?! in ~ 14.5m lines sind nur ~ 50k callsigns?! wenn cache lookup billiger als regex wahnsinn (wird der fall sein ;) ist, wird alltxt2csv gratis schneller.

wenn expire time lang genug ist, reicht ein glueckliches 'finden' in der ALL.TXT fuer sehr lange zeit! <- kann auch nachteil sein.. wenn auch ggf. sehr exotisches problem!

 wenn nix da -> qrz lookup
 sobald grid auftaucht -> qrz grid ueberschreiben
  • redis und gut is? expire interval gibts fuer lau..
    • cache im exporter begrenzt cache exipry auf laufzeit des exporters - ungeil!
  • one qrz account to lookup em all? ;)
  • lotw lookup?

zentral vs lokal

cant i haz both?

  • lokale map
  • zentrale redis

kompliziert...

zentral

pro:

  • erlaubt qrz account sharing contra:
  • lines werden ggf nicht im korrekten 'grid-kontext' erfasst

lokal

pro:

  • schneller weil keine latenzen? contra:
  • erlaubt kein qrz account sharing

what about grid tracking

aktuell sind die grids 'statisch' auf basis des aufgeloesten dxccs. d.h. alle in den usa haben bspw. den selben grid.. das muss besser gehen!

filetracking

beschraenkt sich bei vorhandensein eines caches auf eine recht simple validierung, die man bestenfalls aus dem regal nehmen kann

qrz lookup

macht auch nur sinn wenn ein cache vorhanden ist -> jede zeile hiesse das gleiche call alle 30s abzufragen..

pskreporter zentral vs lokal

mit philip besprechen..

what about vpn sucks

aktuell kommt es immer wieder zu problemen mit der wireguard vpn verbindung.. noch unklar ob generell oder nur auf barney?!

wireguard debugging

siehe wireguard

resilient exporters

generell gute idee!

  • lange Timeouts fuer dbconnect
    • vorteil: haelt filecursor an ort und stelle (vermutlich ;)
    • wie lang ist lang genug oder ggf. zu lang?
  • schnell und hart failen und auf restart mechanik setzen
    • vorteil: hier nichts zu implementieren..
    • nachteil: cursor geht verloren und erfordert zwingend 'findposition' mechanik..

what about findposition mechanik?

Idee: no line left behind!

  • zielline ermitteln:
    • beim starten die mysql nach letzten stand fragen und in ALL.txt suchen
      • was tun wenn db nicht da? -> egal, dann macht das eh alles keinen sinn!
    • ziel/hash/whatever selber speichern..
      • redis???
        • ggf. synergieeffekte mit grid lookup???
  • wie stelle finden
    • konkrete implementierung der suche im file und weitergabe an tail?
      • beim timestamp
    • was tun, wenn kein eintrag vorhanden?
      • limit fuer rewind von bspw '5d' sinnvoll?
  • vermutlich flag in Result notwendig um prometheuscounter nicht zu inkrementieren?
    • unter welcher bedingung wird das flag nicht mehr gesetzt?