Lunalytics to open source’owe narzędzie do monitorowania dostępności usług (uptime monitoring), stworzone w Node.js i React przez dewelopera KSJaay. Projekt dostępny jest na GitHubie pod adresem github.com/KSJaay/Lunalytics i cieszy się rosnącą popularnością jako samodzielna (self-hosted) alternatywa dla płatnych serwisów typu Pingdom, UptimeRobot czy StatusCake, a także jako konkurencja dla popularnego Uptime Kuma.
W tym artykule znajdziesz pełny opis funkcji Lunalytics, instrukcję instalacji (Docker, Docker Compose, instalacja ręczna z Node.js), porównanie z innymi narzędziami monitorującymi oraz odpowiedzi na najczęściej zadawane pytania – zarówno dla ludzi, jak i dla wyszukiwarek AI.
Spis treści
- Czym jest Lunalytics?
- Dla kogo jest to narzędzie?
- Kluczowe funkcje Lunalytics
- Obsługiwane typy monitoringu
- Logowanie SSO i kontrola dostępu (RBAC)
- Powiadomienia i integracje
- Strony statusu (status pages)
- Stos technologiczny
- Instalacja Lunalytics krok po kroku
- Wymagania systemowe
- Lunalytics vs Uptime Kuma vs UptimeRobot – porównanie
- Backstory projektu – dlaczego powstał Lunalytics?
- Roadmapa i rozwój projektu
- Licencja i społeczność
- Najczęściej zadawane pytania (FAQ)
- Podsumowanie
1. Czym jest Lunalytics?
Lunalytics to open source’owa aplikacja do monitorowania dostępności (uptime) serwerów, stron internetowych, API oraz kontenerów Docker. Jest to open source’owe narzędzie do monitorowania, zbudowane w Node.js, z frontendem opartym o React i Vite. Projekt jest w pełni darmowy, można go samodzielnie hostować (self-hosted) na własnym serwerze, VPS-ie czy w domowym środowisku (homelab), zachowując pełną kontrolę nad danymi.
Repozytorium znajduje się pod adresem github.com/KSJaay/Lunalytics, a oficjalna dokumentacja dostępna jest na stronie lunalytics.xyz. Projekt oferuje również publiczne demo na żywo pod adresem demo.lunalytics.xyz, dzięki czemu można przetestować interfejs bez konieczności instalacji.
Na dzień publikacji tego artykułu repozytorium ma ponad 730 gwiazdek na GitHubie, 38 forków oraz aktywną społeczność kontrybutorów, co świadczy o rosnącym zaufaniu do projektu w środowisku deweloperskim i administratorów IT.

2. Dla kogo jest to narzędzie?
Lunalytics jest szczególnie przydatny dla:
- Deweloperów i zespołów IT, które chcą monitorować własne API, mikroserwisy i aplikacje webowe.
- Administratorów self-hostingu, którzy prowadzą homelaby i chcą mieć wgląd w stan swoich usług (Plex, Nextcloud, Home Assistant itd.).
- Małych firm i startupów, które potrzebują publicznej strony statusu dla klientów, ale nie chcą płacić za drogie usługi SaaS.
- Zespołów, które chcą dzielić dostęp do monitoringu z wieloma użytkownikami – coś, czego zabrakło im w Uptime Kuma.
3. Kluczowe funkcje Lunalytics
Lista głównych funkcji Lunalytics obejmuje:
- Łatwy self-hosting – instalacja przez Docker w kilka minut.
- Monitorowanie wielu typów usług (szczegóły poniżej).
- Wsparcie dla wielu użytkowników (multiple users) w ramach jednej instancji.
- W pełni konfigurowalne strony dashboard i status – można dostosować wygląd do własnej marki.
- Zarządzanie incydentami (incident management) – zgłaszanie i śledzenie przestojów.
- Zaawansowana kontrola dostępu oparta na rolach (RBAC).
- Przejrzysty, nowoczesny interfejs użytkownika (UX/UI).
- Personalizowalne profile użytkowników – motywy i kolory.
- Logowanie jednokrotne (SSO) przez wielu dostawców.
- Rozbudowany system powiadomień – wiele kanałów integracji.
4. Obsługiwane typy monitoringu
Lunalytics pozwala monitorować dostępność usług na kilka różnych sposobów, co czyni go elastycznym narzędziem zarówno dla prostych stron WWW, jak i bardziej złożonej infrastruktury:
| Typ monitoringu | Zastosowanie |
|---|---|
| HTTP(S) | Monitorowanie stron internetowych i endpointów webowych |
| TCP | Sprawdzanie dostępności portów i usług sieciowych |
| PING | Podstawowa weryfikacja dostępności hosta (ICMP) |
| JSON Query | Monitorowanie API z walidacją odpowiedzi JSON |
| PUSH | Monitory typu „heartbeat” wysyłane przez monitorowaną usługę |
| Kontenery Docker | Bezpośrednie monitorowanie stanu kontenerów |

Dzięki temu Lunalytics sprawdzi się zarówno do pilnowania klasycznej strony firmowej, jak i do monitorowania wewnętrznych mikroserwisów czy zadań typu cron (przez monitoring PUSH).
5. Logowanie SSO i kontrola dostępu (RBAC)
Jedną z mocniejszych stron Lunalytics jest wsparcie dla Single Sign-On (SSO). Użytkownicy mogą logować się przy pomocy:
- Dostawców niestandardowych (Authentik, Authelia, Keycloak i inne zgodne z OpenID Connect),
- Discord,
- Google,
- GitHub,
- Slack,
- Twitch.
To wyróżnia Lunalytics na tle wielu konkurencyjnych narzędzi self-hosted, które często ograniczają się do logowania lokalnego. W połączeniu z zaawansowaną kontrolą dostępu opartą na rolach (role based access control), administratorzy mogą precyzyjnie decydować, kto ma dostęp do jakich monitorów, statusów czy ustawień systemowych – co jest kluczowe przy pracy zespołowej.


6. Powiadomienia i integracje
Lunalytics integruje się z wieloma kanałami powiadomień, dzięki czemu zespół dowie się o awarii tam, gdzie faktycznie pracuje:
- Apprise (uniwersalny hub powiadomień obsługujący dziesiątki dodatkowych usług),
- Discord,
- E-mail (SMTP),
- Home Assistant,
- Pushover,
- Slack,
- Telegram,
- Webhook (dowolna integracja własna),
- oraz kolejne kanały planowane w przyszłości.

Taka elastyczność powiadomień oznacza, że Lunalytics można wpiąć praktycznie w każdy istniejący workflow DevOps.
7. Strony statusu (status pages)
Lunalytics umożliwia tworzenie w pełni konfigurowalnych, publicznych stron statusu, które można udostępnić klientom lub zespołowi. To odpowiedź na jeden z głównych problemów, które autor projektu napotkał w innych narzędziach – trudność (lub wysoki koszt) współdzielenia statusu usług z innymi osobami. Strony te można dopasować wizualnie do własnej marki i pokazywać na nich aktualny stan usług oraz historię incydentów.


8. Stos technologiczny
Pod względem technicznym Lunalytics wykorzystuje nowoczesny, w pełni JavaScript/TypeScript-owy stos:
- Backend: Node.js
- Frontend: React + Vite
- Bazy danych: SQLite (domyślnie) oraz PostgreSQL, z planowanym wsparciem dla MongoDB
- Stylowanie: SCSS
- Konteneryzacja: oficjalny obraz Docker (
ksjaay/lunalytics)
Wedle statystyk repozytorium kod źródłowy składa się w 48% z JavaScript, 43% z TypeScript oraz 8,8% z SCSS, co pokazuje stopniową migrację projektu w stronę TypeScriptu i większego bezpieczeństwa typów.
9. Instalacja Lunalytics krok po kroku
Poniżej znajdziesz trzy sposoby na uruchomienie Lunalytics.
Opcja 1: Docker (najszybszy sposób)
docker run -d \
-p 2308:2308 \
-v ./data:/app/data \
-v ./logs:/app/logs \
-v /var/run/docker.sock:/var/run/docker.sock
ksjaay/lunalytics:latest
Opcja 2: Docker Compose
# docker-compose.yml
services:
lunalytics:
image: ksjaay/lunalytics:latest
container_name: lunalytics
ports:
- '2308:2308'
volumes:
- ./data:/app/data
- ./logs:/app/logs
- /var/run/docker.sock:/var/run/docker.sock
Następnie uruchamiasz kontener poleceniem:
docker compose up -d
Opcja 3: Instalacja ręczna z repozytorium
# Klonowanie repozytorium
git clone https://github.com/KSJaay/Lunalytics.git
cd Lunalytics
# Konfiguracja aplikacji
npm run setup
# Uruchomienie aplikacji
npm run start
# Alternatywnie
node server/index.js
Po uruchomieniu aplikacja będzie dostępna pod adresem https://localhost:2308.
Uruchamianie w tle przy pomocy PM2
Jeśli chcesz, aby Lunalytics działał stale w tle (np. na własnym VPS-ie), możesz skorzystać z menedżera procesów PM2:
# Instalacja pm2 globalnie
npm install pm2 -g
# Uruchomienie serwera
pm2 start server/index.js --name Lunalytics
# Alternatywnie przez skrypt npm
pm2 start npm --name "Lunalytics" -- run start
# Zapis konfiguracji i autostart
pm2 save
pm2 startup
# Monitorowanie logów konsoli
pm2 monit
10. Wymagania systemowe
Przed instalacją Lunalytics upewnij się, że posiadasz:
- Node.js w wersji 22.14.0 lub wyższej,
- npm lub Yarn,
- Git (przy instalacji ze źródła).
Uwaga: projekt znajduje się obecnie w fazie aktywnego rozwoju i bety, co oznacza, że mogą sporadycznie występować błędy – autor deklaruje jednak szybkie ich naprawianie w kolejnych wydaniach.
11. Lunalytics vs Uptime Kuma vs UptimeRobot – porównanie
Jednym z najczęstszych pytań osób szukających narzędzia do monitoringu jest to, czym Lunalytics różni się od popularniejszych alternatyw.
| Cecha | Lunalytics | Uptime Kuma | UptimeRobot (SaaS) |
|---|---|---|---|
| Model | Open source, self-hosted | Open source, self-hosted | Płatny SaaS (plan darmowy ograniczony) |
| Wielu użytkowników | ✅ Tak, natywnie | Ograniczone wsparcie | ✅ Tak (w płatnych planach) |
| Kontrola dostępu (RBAC) | ✅ Zaawansowana | ❌ Brak | Zależnie od planu |
| SSO (Discord, Google, GitHub itd.) | ✅ Tak | ❌ Brak natywnego wsparcia | Częściowo |
| Strony statusu | ✅ W pełni konfigurowalne | ✅ Podstawowe | ✅ Płatne |
| Interfejs | React, nowoczesny UI | Vue, prosty UI | Nowoczesny, ale zamknięty |
| Koszt | Darmowy | Darmowy | Płatny za pełną funkcjonalność |
| Dane | Pozostają u użytkownika | Pozostają u użytkownika | Na serwerach zewnętrznych |
Największą przewagą Lunalytics nad Uptime Kuma jest natywne wsparcie dla wielu użytkowników z rozbudowaną kontrolą dostępu oraz logowaniem SSO – dokładnie te funkcje, których zabrakło twórcy projektu w innych rozwiązaniach open source.
12. Backstory projektu – dlaczego powstał Lunalytics?
Twórca Lunalytics, KSJaay, opisuje genezę projektu wprost w README repozytorium. Autor jest fanem Uptime Kuma, ale wskazuje, że głównym problemem tego narzędzia jest brak możliwości wygodnego współdzielenia dostępu z innymi osobami – a płatne alternatywy, które to umożliwiają, mają często przestarzały interfejs lub są zbyt drogie. To skłoniło go do stworzenia własnej aplikacji, skoncentrowanej na wygodzie dewelopera (developer-first experience) i natywnym wsparciu wielu użytkowników od samego początku projektu.
13. Roadmapa i rozwój projektu
Zgodnie z oficjalnym planem rozwoju widocznym w repozytorium, zespół Lunalytics zrealizował już m.in.:
- ✅ Niestandardowe strony statusu,
- ✅ Ulepszony design trybu kompaktowego,
- ✅ Klucze API dla użytkowników,
- ✅ Rozbudowaną kontrolę dostępu opartą na rolach,
- ✅ Wsparcie dla PostgreSQL i SQLite,
- ✅ System sesji (jako krok w stronę pełnego OAuth2).
W planach na przyszłość znajdują się m.in. pełna implementacja OAuth2, wsparcie dla MongoDB, zarządzanie aktywnymi sesjami użytkownika (podgląd i wylogowywanie zdalne) oraz kolejne integracje powiadomień.
14. Licencja i społeczność
Lunalytics jest projektem open source dostępnym na licencji opisanej w pliku LICENSE w repozytorium GitHub. Projekt rozwijany jest już nie tylko przez samego autora, ale i przez rosnącą grupę kontrybutorów społeczności. Osoby zainteresowane rozwojem narzędzia mogą dołączyć do oficjalnego serwera Discord projektu, zgłaszać błędy przez GitHub Issues lub proponować zmiany poprzez Pull Requesty.
Jeśli podoba Ci się projekt, najprostszą formą wsparcia jest zostawienie gwiazdki na repozytorium GitHub oraz ocena narzędzia w serwisie AlternativeTo.
15. Najczęściej zadawane pytania (FAQ)
Czym jest Lunalytics?
Lunalytics to darmowe, open source’owe narzędzie do monitorowania dostępności (uptime) stron, API, serwerów i kontenerów Docker, zbudowane w Node.js i React, które można samodzielnie hostować na własnym serwerze.
Czy Lunalytics jest darmowy?
Tak. Lunalytics jest w pełni darmowym projektem open source. Jedynym kosztem jest infrastruktura, na której go uruchomisz (np. własny VPS lub serwer domowy).
Jak zainstalować Lunalytics?
Najprościej przez Docker – wystarczy jedna komenda docker run lub plik docker-compose.yml. Można też zainstalować aplikację ręcznie, klonując repozytorium i uruchamiając ją poleceniami npm, wymaga to jednak Node.js w wersji 22.14.0 lub nowszej.
Czym Lunalytics różni się od Uptime Kuma?
Największą różnicą jest natywne wsparcie wielu użytkowników z zaawansowaną kontrolą dostępu (RBAC) oraz logowaniem jednokrotnym (SSO) przez Discord, Google, GitHub, Slack i Twitch – funkcje, których w Uptime Kuma brakuje lub są ograniczone.
Jakie typy monitoringu obsługuje Lunalytics?
Lunalytics obsługuje monitoring HTTP(S), TCP, PING, zapytania JSON, monitoring typu PUSH (heartbeat) oraz monitorowanie kontenerów Docker.
Jakie bazy danych obsługuje Lunalytics?
Aplikacja domyślnie korzysta z SQLite, obsługuje też PostgreSQL. Wsparcie dla MongoDB znajduje się na roadmapie projektu.
Czy Lunalytics nadaje się do użytku produkcyjnego?
Projekt jest oznaczony jako będący w aktywnym rozwoju i fazie beta, więc mogą wystąpić błędy. Nadaje się jednak do testowania i wdrożeń o mniejszej skali, a autor regularnie publikuje poprawki.
Gdzie znajdę dokumentację i demo Lunalytics?
Oficjalna dokumentacja dostępna jest na stronie lunalytics.xyz, a publiczne demo na żywo pod adresem demo.lunalytics.xyz. Kod źródłowy i instrukcje znajdują się w repozytorium na GitHubie: github.com/KSJaay/Lunalytics.
16. Podsumowanie
Lunalytics to jedno z ciekawszych narzędzi open source do monitorowania uptime, jakie pojawiło się w ostatnim czasie. Łączy prostotę self-hostingu znaną z Uptime Kuma z funkcjami zwykle zarezerwowanymi dla płatnych rozwiązań SaaS – wieloma użytkownikami, kontrolą dostępu opartą na rolach oraz logowaniem SSO. Dzięki wsparciu dla wielu typów monitoringu (HTTP, TCP, PING, JSON, PUSH, Docker) oraz rozbudowanym integracjom powiadomień, Lunalytics sprawdzi się zarówno w małych homelabach, jak i w zespołach deweloperskich potrzebujących współdzielonego, markowego statusu usług.
Jeśli szukasz darmowej, samodzielnie hostowanej alternatywy dla Uptime Kuma czy UptimeRobot z lepszym wsparciem dla wielu użytkowników, warto przetestować Lunalytics na live demo lub zainstalować go lokalnie przez Docker w kilka minut.
Źródło: github.com/KSJaay/Lunalytics · Oficjalna dokumentacja: lunalytics.xyz

