licence-server/docs/loggerservice
Nenad Djukic 3480766c3e Prijemnik dijagnostike sa TERMINIA uredjaja (logger/)
- UDP prijemnik (podrazumevano 46465, NE 46464 gde uredjaji slusaju discovery):
  dnevnik rada sa zaglavljem #TERMINIA, heartbeat JSON, sve ostalo se odbacuje
- paket bez zaglavlja (FW < 0.13.4) se vodi kao "nepoznat uredjaj" po izvornoj
  IP adresi i tako je i oznacen u prikazu
- dnevnik u fajlove po uredjaju i danu, rotacija po velicini + tri kvote
  (starost, po uredjaju, ukupno); otvoren fajl se nikad ne brise
- heartbeat u memoriji; interval se meri iz razmaka javljanja, "tih" = 3x interval
- web stranica (podrazumevano 127.0.0.1:8081): spisak uredjaja, crveno za tihe,
  poslednjih N linija sa pretragom, /dnevnik.txt i /api/uredjaji
- bez baze i bez spoljnih zavisnosti; ne dira licencni servis, njegovu bazu,
  rute ni nginx
- sanitizacija svega iz paketa (duzine, kontrolni znaci, ime foldera) — bez
  izlaska iz foldera dnevnika
- systemd unit + primer env fajla + README sa uputstvom za pustanje na server
- testovi: parsiranje (zaglavlje/JSON/bez zaglavlja/smece), registar, rotacija
  i kvote, web rute

Nije pusteno na server — puštanje radi vlasnik po logger/README.md.
2026-07-25 17:40:27 +02:00
..
00-vizija-i-mvp.md Preimenovanje: dal-license-server -> licence-server (+ debrendiranje) 2026-07-25 07:55:26 +02:00
01-rbac-model.md Preuzet radni paket LoggerService (RBAC kontrolna ravan) iz firmverskog repoa 2026-07-25 07:10:37 +02:00
02-uredjaji-heartbeat-discovery.md Prijemnik dijagnostike sa TERMINIA uredjaja (logger/) 2026-07-25 17:40:27 +02:00
03-provisioning-i-fw-katalog.md Preuzet radni paket LoggerService (RBAC kontrolna ravan) iz firmverskog repoa 2026-07-25 07:10:37 +02:00
04-zadaci.md Preuzet radni paket LoggerService (RBAC kontrolna ravan) iz firmverskog repoa 2026-07-25 07:10:37 +02:00
05-pravila-rada.md Preimenovanje: dal-license-server -> licence-server (+ debrendiranje) 2026-07-25 07:55:26 +02:00
README.md Preimenovanje: dal-license-server -> licence-server (+ debrendiranje) 2026-07-25 07:55:26 +02:00

LoggerService — radni paket za agenta (kontrolna ravan)

Misija: izgraditi serversku kontrolnu ravan za flote terminala — RBAC stablo organizacija, uređaji + heartbeat, servisni grantovi, provisioning i katalog firmvera — kao proširenje postojećeg licence-server-a (server 151). Jedan backend, dva lica: terminia.net = vendor (licence/fw), loggerservice.com = serviserski brend (isti mozak, drugi izgled).

Jezik projekta: srpski (ekavica), latinica; Go komentari srpski ASCII.

Poreklo: paket je nastao u firmverskom repou (asp-terminia/serviseri/) i prebačen ovde 2026-07-25 — isti backend/baza kao paket docs/asp-terminia/ (licenciranje), koordinacija migracija mora ići kroz jedan repo. Firmverska strana (svc.cpp, discovery/heartbeat) je gotova i ostaje u firmverskom repou. „ASP repo" u tekstu znači https://git.terminia.net/djuka/asp-terminia.

Sadržaj foldera

Fajl Šta je unutra
00-vizija-i-mvp.md ČITATI PRVO — LoggerService je aplikacija za servisne firme (oprema/klijenti/nalozi/zaduženja); uređaji su MODUL; MVP obim (dogovor 2026-07-24 uveče)
01-rbac-model.md ZAKLJUČEN model: stablo orgs, 4 role, grantovi, invarijante, šeme tabela
02-uredjaji-heartbeat-discovery.md šta uređaj VEĆ šalje (UDP formati) i šta server treba da primi
03-provisioning-i-fw-katalog.md Model B/A, postojeći bootstrap FW, katalog .bin-ova, potpisani URL
04-zadaci.md zadaci redom sa kriterijumima prihvatanja
05-pravila-rada.md OBAVEZNO prvo — produkcija, backup, granice

Kontekst u 6 redova

  1. Proizvod: ESP32S3 terminali (linija ASP; prvi proizvod ASPTerminia — kontrola prolaza za bazene/spa). Terminal je autonoman i radi offline; platforma je opcioni sloj za flote (više vlasnika, servis, prodaja, OTA).
  2. Hijerarhija: Terminia = vendor/koren stabla (vlasnik svega); DAL = KUPAC (org pod Terminijom) — ne vendor.
  3. Serviseri NISU nivo u stablu nego grant preko stabla (razdvaja vlasništvo od servisnog pristupa) — detalji u 01.
  4. Server: isti licence-server (Go/MySQL, produkcija!) — RBAC se DODAJE migracijama; koordinacija sa paketom docs/asp-terminia/ (deli bazu i admin sloj).
  5. Uređaj već emituje: LAN discovery (UDP 46464, upit TERMINIA? → JSON identitet), heartbeat (UDP JSON na podesiv interval), dbg dnevnik (UDP) — formati u 02. devices.status na serveru se hrani iz heartbeat-a.
  6. Brend: loggerservice.com domen kupuje vlasnik (kredencijali kod njega); do tada se sve gradi i testira na IP-u / internim rutama.

Šta agent NE radi

  • Ne kupuje/podešava domene (vlasnik) — ali priprema nginx blokove da se uključe.
  • Ne dira postojeće proizvode/licence, terminia SaaS, ESIR, Gitea-u.
  • Ne implementira ništa na SAMOM uređaju (firmware) — uređaj je gotov za ovaj obim; ako zatreba izmena FW, zapisati ZAHTEV u 04 (sekcija „Zahtevi ka firmveru").

Veze