Skip to main content

zabbixvms

Zabbix agent pro monitorování instalací VMS od Logic Elements.

Sleduje MySQL databázi (BVMS), do které zapisuje serverový software VMS, a odvozené metriky o stavu systému (měřené otáčky, stáří bufferů, konfigurace a časových značek, počty řádků v bufferech, ukládání a export surových dat VMS a TVMS, stáří trendových dat vybraných signálů) odesílá na Zabbix server jako trapper položky (vms.speed, vms.buf_rows, ...). Na samostatný host serveru posílá nabití baterie UPS, které čte z Eaton Intelligent Power Protector.

Balíček vznikl vyčleněním z projektu pyvms; na něm už nezávisí a s databází BVMS pracuje sám.

Dokumentace

  • PRS-zabbixvms.md – Product Requirement Specification: účel projektu, use cases a requirementy.
  • PLAN-zabbixvms.md – plán: rozpad requirementů do etap.
  • NAVRH-zabbixvms.md – návrh struktury balíčku: jména, členění modulů a odpovědnosti.
  • NAVOD-zabbix.md – návod k nastavení Zabbixu: založení hostů, import šablony, mez otáček, odesílání e-mailů při problému, prefixy tabulek surových dat a signály trendových dat.
  • CHYBY-agenta.md – co agent hlásí, kde chyby vznikají a kde k nim hledat podrobnosti.
  • BUILD-balicku.md – sestavení balíčku: virtuální prostředí, testy, build.bat a publikování.

Instalace

Na serveru, kde má agent běžet, se balíček nainstaluje a pak se zaregistruje služba. Druhý příkaz zapisuje do registru, takže potřebuje příkazovou řádku spuštěnou jako správce:

pip install .
zabbixvms-service install

Registrace nastaví automatický start služby, práva k datové složce a spouštění tray aplikace po přihlášení uživatele. Na serveru bez přístupu k PyPI se instaluje ze složky offline – celý postup je v BUILD-balicku.md.

Běží pouze na Windows (pro integraci s Windows Service se používá pywin32).

Python musí být na serveru nainstalovaný pro celý stroj (volba „for all users"), ne jen pro přihlášeného uživatele. Služba běží pod účtem LocalSystem a hostitelský proces pythonservice.exe potřebuje najít python3XX.dll. U instalace jen pro uživatele leží tahle knihovna v %LOCALAPPDATA%, LocalSystem ji na své cestě nemá a služba pak nenastartuje – ohlásí se jen chyba 1053, protože proces skončí dřív, než stihne odpovědět správci služeb.

Použití

Instalace vytvoří dva vstupní body:

  • zabbixvms-service – služba Windows ZabbixVms,
  • zabbixvms-tray – ikona v systray, spouští se bez konzolového okna.

Jsou to programy ve složce Scripts toho Pythonu, do kterého se balíček nainstaloval. Příkazová řádka je zná jen tehdy, když je ta složka v PATH: u Pythonu nainstalovaného pro celý stroj to platí vždycky, u virtuálního prostředí až po jeho aktivaci. Hlášení The term 'zabbixvms-service' is not recognized znamená právě tohle, ne chybějící balíček.

Konfigurace (přístupové údaje k MySQL a Zabbixu, seznam monitorovaných turbín) je JSON v souboru C:\ProgramData\LogicElements\ZabbixVms\config.json. Pokud soubor neexistuje, vytvoří se při prvním spuštění z výchozí šablony dodané v balíčku; existující soubor zůstává beze změny i při aktualizaci balíčku. Jen instalační skript z offline do něj při aktualizaci doplní položky, které přinesla nová verze, a původní soubor nechá vedle jako config.json.bak.

Balíček žádné heslo neobsahuje: v nově vytvořené konfiguraci jsou hesla do MySQL (database.password) a do IPP (server.ups.password) prázdná a obsluha je doplní do config.json. Dokud v něm heslo do MySQL není, agent se nepřipojí a do logu zapíše chybu přístupu.

Vývoj

Ve vývojovém checkoutu se instaluje editovatelně do virtuálního prostředí a testy se spouští z kořene repozitáře:

.\.venv\Scripts\Activate.ps1
pip install -e ".[dev]"
pytest

Vstupní body pak leží v .venv\Scripts, takže bez aktivovaného prostředí je potřeba plná cesta – třeba .\.venv\Scripts\zabbixvms-service.exe install. Založení prostředí i nastavení, které aktivaci povolí, popisuje BUILD-balicku.md.

Licence

MIT © Logic Elements s.r.o. — viz LICENSE.

Metadata

Release files for zabbixvms 0.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zabbixvms 0.5.1
File Size Uploaded
zabbixvms-0.5.1.tar.gz 98.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for zabbixvms 0.5.1
File Interpreter ABI Platform
zabbixvms-0.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 145.9 kB

Release files / zabbixvms-0.5.1.tar.gz

Download URL zabbixvms-0.5.1.tar.gz
Size 98.0 kB
Tags Source
SHA-256 checksum
How to use checksums
fff86206a146c47343400e23eea829db5db2e21f7b06c35fa55617c51387e00b
BLAKE2b-256 checksum
How to use checksums
f3a55a13e54837873e1876e60379f0114c9dfbe7a55a3ec52dcdf9ad194e874c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zabbixvms-0.5.1-py3-none-any.whl

Download URL zabbixvms-0.5.1-py3-none-any.whl
Size 47.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
44f20f5ff794330f2ad305f79898c67d81c4bcb2575c62597a3bba52e3b4a737
BLAKE2b-256 checksum
How to use checksums
2ba6010a713b51222a9b0bf561e363e76e96d6b1b42a81d2493ded4e5b2a6c45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release

0.5.1 This release

2 release files

0.1.4

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page