CodeWorlds
Powrót do kolekcji
Przewodnik15 min czytaniaZespół CodeWorlds

Highlight.io wchłonięty przez LaunchDarkly

Domena highlight.io przekierowuje w całości na launchdarkly.com. Co pokazują pakiety npm, licencje i obrazy kontenerów oraz czym zastąpić nagrania sesji.

Highlight.io wchłonięty przez LaunchDarkly

Highlight.io nie jest już osobnym produktem. Domena przekierowuje w całości na launchdarkly.com, ostatnie wydanie wariantu do uruchomienia u siebie pochodzi z sierpnia 2025 roku, a biblioteka highlight.run nadal wychodzi na npm dlatego, że stała się wewnętrzną zależnością pakietów obserwowalności LaunchDarkly. Jeśli szukasz Highlight.io jako narzędzia do wdrożenia, trafiłeś na coś innego, niż opisuje dokumentacja z pamięci wyszukiwarki.

Gdzie prowadzą stare adresy

Zamiast opierać się na tym, co pamiętają wyniki wyszukiwania, można sprawdzić same przekierowania. Sześć adresów, jedno miejsce docelowe.

Code
Bash
for u in https://highlight.io https://www.highlight.io https://highlight.io/docs \
         https://highlight.io/pricing https://highlight.run https://docs.highlight.run; do
  printf '%s -> ' "$u"
  curl -sL -o /dev/null -w '%{http_code} %{url_effective}\n' "$u"
done

Każdy z sześciu zwraca 200 i adres docelowy https://launchdarkly.com/. To nie jest przekierowanie na stronę migracji ani na sekcję produktu. Wszystko, łącznie z dokumentacją i cennikiem, ląduje na stronie głównej LaunchDarkly, która nosi tytuł "Runtime Control for AI-Era Software, Feature Flags & AI Agent Control". Produkt przedstawia się jako platforma do flag funkcji i sterowania agentami, a obserwowalność jest tam jedną z zakładek, nie osią oferty.

Wyjątkiem jest app.highlight.io, które zwraca 200 pod własnym adresem, czyli aplikacja dla istniejących kont nadal odpowiada. Nie sprawdzałem, co widać po zalogowaniu, bo nie mam tam konta, i tego nie zgaduję.

Repozytorium zachowuje się inaczej niż domena. github.com/highlight/highlight zwraca 200 bez przekierowania, nie jest zarchiwizowane i nadal przyjmuje zmiany. Najnowszy zapis w gałęzi głównej nosi tytuł feat(highlight.io): redirect landing page to launchdarkly.com i pochodzi z 20 sierpnia 2026 roku, czyli sprzed dwóch dni. To ten zapis odpowiada za stan opisany wyżej i jednocześnie datuje moment, w którym marka zniknęła z sieci.

Repozytorium żyje, ale nie jako produkt

Ruch w gałęzi głównej jest rzadki i ma charakter utrzymaniowy. Poza wspomnianym przekierowaniem ostatnie zapisy to podniesienie basic-ftp do 5.3.1 z powodu podatności CVE-2026-2769 z 20 sierpnia 2026 roku, rotacja wygasłego pliku środowiskowego dla wariantu enterprise z 18 sierpnia 2026 roku, usunięcie resolwerów kont z 27 lipca 2026 roku oraz poprawka zaproszeń z 16 kwietnia 2026 roku. Cztery zmiany w cztery miesiące, wszystkie reaktywne.

Wydania są jeszcze rzadsze. Ostatnie w repozytorium to docker-v0.5.6, utworzone na GitHubie 8 sierpnia 2025 roku. Poprzedzające je docker-v0.5.5 ma datę 23 czerwca 2025 roku, a docker-v0.5.4 i docker-v0.5.3 pochodzą z 12 lutego 2025 roku. Od roku nie wyszło nic nowego dla osób hostujących u siebie.

Rozjazd między kanałami jest tu istotny i łatwo się na nim potknąć. Pakiety serwerowe zamarły razem z repozytorium, pakiet przeglądarkowy nie. To dwa różne cykle życia pod jedną, nieaktualną już marką.

ArtefaktOstatnia wersjaData publikacjiKto publikuje
highlight/highlight (obrazy)docker-v0.5.68 sierpnia 2025repozytorium highlight
@highlight-run/node3.12.2222 sierpnia 2025konto podoman
@highlight-run/next7.9.3822 sierpnia 2025konto podoman
@highlight-run/react21.0.022 sierpnia 2025konto podoman
highlight-io (PyPI)0.10.23 maja 2025PyPI
highlight.run10.7.113 sierpnia 2026konto vadim-highlight
@launchdarkly/observability1.1.1913 sierpnia 2026LaunchDarkly

Cała rodzina @highlight-run/* wyszła ostatni raz tego samego dnia, 22 sierpnia 2025 roku, dokładnie rok temu. Jedynym elementem, który dostaje wydania dalej, jest highlight.run.

Kto publikuje highlight.run

To pytanie decyduje o wszystkim, bo od niego zależy, czy z pakietu można jeszcze korzystać. Odpowiedź jest jednoznaczna i widać ją w metadanych rejestru.

Code
Bash
npm view highlight.run@10.7.1 repository.url dependencies license
# https://github.com/launchdarkly/observability-sdk.git
# { '@launchdarkly/js-client-sdk': '^4.0.0',
#   imurmurhash: '^0.1.4',
#   'stacktrace-js': '2.0.2' }
# Apache-2.0

Pole repository wskazuje repozytorium launchdarkly/observability-sdk, a nie highlight/highlight. Zależność produkcyjna to @launchdarkly/js-client-sdk w zakresie ^4.0.0. Pole homepage nadal wskazuje https://github.com/highlight/highlight#readme i jest to jedyna pozostałość po starym adresie, czyli metadane są niespójne.

Rozpakowana paczka rozstrzyga sprawę do końca. W dist/ leżą pliki LDObserve.js, LDObserve.d.ts, LDRecord.js i LDRecord.d.ts, a mapa exports w manifeście wystawia ścieżki ./ld/observe i ./ld/record obok starych ./observe i ./record. README paczki mówi wprost, że nagrywanie sesji opiera się na forku launchdarkly/rrweb zsynchronizowanym z rrweb v2.0.1.

Najkrótszy dowód znajduje się jednak w pakiecie LaunchDarkly. Cały plik dist/index.d.ts w @launchdarkly/observability 1.1.19 to dwie linie i obie są reeksportem.

Code
TypeScript
// @launchdarkly/observability 1.1.19, dist/index.d.ts
export { Observe as default, LDObserve } from 'highlight.run';
export type { ObserveOptions } from 'highlight.run';

// @launchdarkly/session-replay 1.1.19, dist/index.d.ts
export { Record as default, LDRecord } from 'highlight.run';
export type { RecordOptions } from 'highlight.run';

Oba pakiety LaunchDarkly deklarują highlight.run w wersji dokładnie 10.7.1, bez zakresu. Wniosek jest taki: highlight.run to dziś silnik nagrywania i zbierania danych wewnątrz SDK LaunchDarkly, publikowany pod starą nazwą, żeby nie łamać instalacji. Biblioteka żyje, ale jako część cudzego produktu, a nie jako samodzielne narzędzie.

Ślad przejęcia w metadanych

Oficjalnego ogłoszenia o przejęciu nie znalazłem. Listing bloga na launchdarkly.com nie zawiera wpisu o Highlight, adresy launchdarkly.com/news/ i launchdarkly.com/press/ zwracają 404, a strona główna LaunchDarkly nie wymienia nazwy Highlight ani razu. Zgadywane adresy typu /blog/launchdarkly-acquires-highlight/ również zwracają 404. Datę da się jednak zawęzić z rejestru npm, bo tam nic nie znika.

Wersja highlight.runData publikacjiPole repositoryPlik LICENSE w paczce
9.18.012 maja 2025brakbrak
9.19.07 sierpnia 2025launchdarkly/observability-sdkCatamorphic, Co.
9.20.022 sierpnia 2025launchdarkly/observability-sdkCatamorphic, Co.
10.0.031 marca 2026launchdarkly/observability-sdkCatamorphic, Co.
10.7.113 sierpnia 2026launchdarkly/observability-sdkCatamorphic, Co.

Wersja 9.18.0 z 12 maja 2025 roku nie ma w manifeście pola repository i nie ma w paczce żadnego pliku licencyjnego. Wersja 9.19.0 z 7 sierpnia 2025 roku ma jedno i drugie, przy czym nota w pliku licencyjnym brzmi "Copyright 2025 Catamorphic, Co.". Catamorphic Co. to podmiot prawny stojący za LaunchDarkly, ta sama nota widnieje w pliku LICENSE repozytorium launchdarkly/observability-sdk.

Z tego wynika przedział: własność zmieniła właściciela między 12 maja a 7 sierpnia 2025 roku, a ślad w paczkach pojawił się 7 sierpnia 2025 roku. Nie jest to data podpisania umowy, tylko data, od której artefakty publiczne przestały należeć do Highlight Inc. Traktuj to jako wnioskowanie z metadanych, nie jako deklarację dostawcy.

Ta sama data tłumaczy, dlaczego rodzina @highlight-run/* wyszła po raz ostatni 22 sierpnia 2025 roku i już nigdy więcej. Dwa tygodnie po przejęciu wydano ostatnią wersję utrzymaniową i zamknięto temat.

Licencja sprawdzona z trzech źródeł

Sprawdziłem trzy niezależne miejsca dla obu rodzin pakietów i dla samego repozytorium. Wyniki są zgodne co do treści, ale niekompletne co do formy, i przy audycie zależności to widać.

Źródło pierwsze, plik licencyjny w repozytorium highlight/highlight. Z wariantów pisowni istnieje tylko LICENSE, bez rozszerzenia. Nazwy LICENSE.md, LICENSE.MD, LICENSE.txt, LICENCE i COPYING zwracają 404. Sam plik nie jest jedną licencją, tylko rozdzielnikiem: nota "Copyright (c) 2020-2023 Highlight Inc.", potem informacja, że zawartość katalogu highlight.io/ podlega licencji z highlight.io/LICENSE, zawartość enterprise/ licencji z enterprise/LICENSE, a wszystko pozostałe licencji Apache 2.0, której pełny tekst dołączono niżej. Oba wskazane pliki faktycznie istnieją, co nie jest oczywiste, bo w innych projektach takie odsyłacze bywają zepsute. highlight.io/LICENSE zawiera pełny tekst Apache 2.0, a enterprise/LICENSE to Highlight Enterprise License, która zezwala na użycie produkcyjne wyłącznie po zaakceptowaniu warunków subskrypcji pod adresem https://highlight.io/terms. Ten adres przekierowuje dziś na launchdarkly.com, więc warunki, do których odsyła licencja, nie są już publicznie dostępne pod wskazanym linkiem. To realny problem prawny, jeśli ktoś chce uruchamiać katalog enterprise/.

Źródło drugie, pole license w rejestrze pakietów. Tu jest niespójność wewnątrz jednej rodziny. highlight.run, @highlight-run/node, @highlight-run/next, @highlight-run/react i @highlight-run/sourcemap-uploader deklarują Apache-2.0. Pakiet @highlight-run/cloudflare 3.1.0 nie ma pola license w ogóle. To nie jest szczegół bez znaczenia, bo @highlight-run/next 7.9.38 zależy od @highlight-run/cloudflare w wersji dokładnie 3.1.0, czyli instalując wtyczkę do Next.js wciągasz do drzewa pakiet bez zadeklarowanej licencji.

Po stronie Pythona rozbieżność ma inną przyczynę. highlight-io 0.10.2 ma w metadanych klasyczne pole License: Apache-2.0. Następca, launchdarkly-observability 1.3.2, używa nowszego pola License-Expression: Apache-2.0 zgodnego z PEP 639, przez co API PyPI zwraca dla niego license: null. Narzędzie czytające wyłącznie stary klucz uzna ten pakiet za pozbawiony licencji, choć licencję ma.

Źródło trzecie, zawartość opublikowanej paczki, wypada najciekawiej.

Code
Bash
npm pack highlight.run@10.7.1 --silent | xargs tar tzf | grep -i licen
# package/LICENSE
head -1 package/LICENSE
# Copyright 2025 Catamorphic, Co.

npm pack @highlight-run/cloudflare@3.1.0 --silent | xargs tar tzf | grep -i licen
# (brak wyniku)

W paczkach highlight.run 10.7.1, @highlight-run/node 3.12.22 i @highlight-run/react 21.0.0 leży plik LICENSE o rozmiarze 557 bajtów z nagłówkiem licencji Apache 2.0 i notą "Copyright 2025 Catamorphic, Co.". Kod w paczkach jest, highlight.run 10.7.1 ma trzydzieści plików, w tym dziesięć plików JavaScript, @highlight-run/node ma dwadzieścia siedem. Paczka @highlight-run/cloudflare 3.1.0 ma siedemnaście plików i żadnego pliku licencyjnego, za to zawiera dwa logi budowania z katalogu .turbo, które wyciekły do publikacji. Po stronie Pythona ani koło highlight_io-0.10.2, ani launchdarkly_observability-1.3.2 nie zawiera pliku licencyjnego, licencja jest wyłącznie w metadanych.

Podsumowanie dla audytu: efektywna licencja bibliotek klienckich to Apache 2.0 z prawami autorskimi po stronie Catamorphic Co., a więc LaunchDarkly. Serwer do uruchomienia u siebie jest Apache 2.0 poza katalogiem enterprise/, który wymaga płatnej subskrypcji na warunkach niedostępnych już pod wskazanym adresem. Nota o prawach autorskich w repozytorium nadal wskazuje Highlight Inc. i rok 2023, co przy formalnym przeglądzie trzeba będzie umieć wytłumaczyć, podobnie jak przy Stack Auth po zmianie nazwy na Hexclave.

Czy wariant u siebie jeszcze działa

Częściowo. Obrazy kontenerów są nadal publikowane w GitHub Container Registry i nadal da się je pobrać anonimowo.

Code
Bash
TOKEN=$(curl -s "https://ghcr.io/token?scope=repository:highlight/highlight-backend:pull&service=ghcr.io" \
  | python3 -c "import sys,json;print(json.load(sys.stdin)['token'])")

curl -s -o /dev/null -w '%{http_code}\n' \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/vnd.oci.image.index.v1+json" \
  https://ghcr.io/v2/highlight/highlight-backend/manifests/docker-v0.5.6
# 200

Manifesty ghcr.io/highlight/highlight-backend:docker-v0.5.6 oraz ghcr.io/highlight/highlight-frontend:docker-v0.5.6 zwracają 200. Warto dodać, że w przestrzeni nazw highlight na Docker Hubie nie ma ani jednego publicznego repozytorium, więc GHCR jest jedynym kanałem.

Plik docker/.env w gałęzi głównej ma jednak zaszyte BACKEND_IMAGE_NAME=ghcr.io/highlight/highlight-backend:docker-v0.5.2 i analogicznie dla frontendu, czyli cztery wydania wstecz względem najnowszego. Kto uruchomi zestaw prosto z repozytorium, dostanie wersję z 30 stycznia 2025 roku, nie z sierpnia. Podniesienie tagu do docker-v0.5.6 to jedna zmiana w pliku, ale trzeba o niej wiedzieć.

Sam zestaw zależności jest ciężki. docker/compose.yml uruchamia ZooKeepera, Kafkę, ClickHouse w wersji 24.3.15.72-alpine, PostgreSQL z rozszerzeniem pgvector w obrazie ankane/pgvector:v0.5.1, Redis 8.0.2 i kolektor OpenTelemetry w wersji 0.128.0, do tego własny backend i frontend. Zmienna GOMEMLIMIT jest ustawiona na 16 GiB, co dobrze oddaje skalę wymagań. To nie jest coś, co postawisz obok aplikacji na jednej małej maszynie.

Trzeźwa ocena wygląda tak: uruchomić się da, ale bierzesz na siebie stos, który nie dostaje poprawek bezpieczeństwa od roku, ma zaszyte wersje ClickHouse i Redis z początku 2025 roku i nie ma ścieżki aktualizacji. Do zabawy w izolowanej sieci, owszem. Do produkcji z danymi użytkowników, nie.

Ile kosztuje dziś to, co zostało

Cennik LaunchDarkly renderuje się w surowym HTML, więc dane da się odczytać bez uruchamiania JavaScriptu. Plan Developer kosztuje $0 / mo, forever i obejmuje 5 tysięcy nagrań sesji oraz 5 tysięcy błędów miesięcznie, 14 dni retencji danych, jeden projekt i trzy środowiska. Po przekroczeniu limitu przyjmowanie danych zatrzymuje się, bez naliczania opłat.

Plan Foundation jest rozliczany za użycie. Karta planu podaje $8.33 per 1k client-side MAU / mo przy rozliczeniu rocznym, a tabela porównawcza niżej na tej samej stronie podaje $10 / mo per 1K MAU. To ta sama pozycja rozliczeniowa w dwóch trybach płatności: 8,33 dolara razy dwanaście miesięcy daje 99,96 dolara rocznie, wobec 120 dolarów przy płatności miesięcznej, czyli rabat rzędu 17 procent. Podaję obie liczby, bo na stronie występują obok siebie bez wyjaśnienia różnicy.

W planie Foundation w cenie mieści się 5 tysięcy nagrań sesji, 5 tysięcy błędów, 10 milionów wpisów dziennika i 10 milionów śladów miesięcznie, retencja rośnie do 30 dni, a nadmiar kosztuje 5 dolarów za tysiąc jednostek. Osobno rozliczane są Service Connections: pierwsze pięć miesięcznie jest wliczone, każde kolejne kosztuje 10 dolarów miesięcznie. Plan Enterprise ma cenę na zapytanie, retencję 100 dni lub więcej i rozliczenie kontraktowe. Dodatek Guardian, obejmujący metryki zabezpieczające i automatyczne wycofanie wdrożenia, jest płatny osobno i dostępny wyłącznie na warstwie Enterprise.

Sedno dla kogoś, kto szukał Highlight.io: kupujesz platformę do flag funkcji, w której obserwowalność jest modułem rozliczanym od aktywnych użytkowników miesięcznie. Model cenowy jest zupełnie inny niż w produkcie, którego szukałeś.

Czym to zastąpić

Highlight.io łączył trzy rzeczy: nagrania sesji, śledzenie błędów i dzienniki. Po rozpadzie produktu najprościej dobrać osobne narzędzie do każdej z nich albo jedno, które pokrywa dwie.

PotrzebaZamiennikWariant u siebieUwagi
Nagrania sesjiOpenReplaytakNajbliższy odpowiednik funkcjonalny
Nagrania plus analityka produktuPostHogtakSzerszy zakres, cięższy stos
Śledzenie błędówSentrytakNajdojrzalsze SDK w tej kategorii
Dzienniki i śladyAxiomnieUsługa zarządzana, model kolumnowy
Nagrania w ramach LaunchDarkly@launchdarkly/session-replaynieTen sam silnik co highlight.run

Jeśli zostajesz przy LaunchDarkly, przejście na oficjalne pakiety jest krótkie, bo wywołujesz ten sam kod pod inną nazwą. SDK ma architekturę wtyczkową i podpina się do klienta flag funkcji.

Code
TypeScript
import { initialize } from 'launchdarkly-js-client-sdk'
import Observability from '@launchdarkly/observability'
import SessionReplay from '@launchdarkly/session-replay'

const client = initialize(
  '<CLIENT_SIDE_ID>',
  { key: 'authenticated-user@example.com' },
  {
    plugins: [
      new Observability({
        networkRecording: { enabled: true, recordHeadersAndBody: true }
      }),
      new SessionReplay()
    ]
  }
)

Uwaga na przykład z README pakietu @launchdarkly/observability: zamiast initialize wywołuje on funkcję o nazwie init3, która nie istnieje. To literówka w dokumentacji, nie inna nazwa API.

Jeśli odchodzisz, stary interfejs H z highlight.run daje się odwzorować bez większych strat. Metody H.init, H.identify, H.track, H.consumeError, H.getSessionURL i H.stop mają odpowiedniki u każdego z zamienników z tabeli. Opcje przekazywane do H.init jako drugi argument typu HighlightOptions obejmują między innymi tracingOrigins, networkRecording, disableConsoleRecording, privacySetting, samplingStrategy, environment, serviceName, version, backendUrl i otlpEndpoint. Ostatnie dwa są kluczowe przy odcięciu się od zarządzanej usługi, bo pozwalają skierować ruch na własny punkt końcowy.

Code
TypeScript
// stan zastany: wskazanie własnego backendu zamiast usługi
import { H } from 'highlight.run'

H.init('PROJECT_ID', {
  backendUrl: 'https://otel.example.com/public',
  otlpEndpoint: 'https://otel.example.com',
  environment: 'production',
  serviceName: 'checkout-web',
  disableConsoleRecording: false,
  networkRecording: { enabled: true, recordHeadersAndBody: false }
})

W aplikacjach opartych o Next.js migracja jest o tyle prostsza, że @highlight-run/next i tak nie dostał wsparcia dla nowszych wydań frameworka, więc jego usunięcie zwykle rozwiązuje problem, który już masz. W czystym React wymiana sprowadza się do podmiany dostawcy kontekstu i wywołań identyfikacji użytkownika.

Typowe błędy

Pierwszy i najczęstszy: instalacja @highlight-run/next w nowym projekcie na podstawie starego wpisu na blogu. Pakiet ciągnie za sobą highlight.run przypięty do wersji 9.20.0, @highlight-run/node 3.12.22, @highlight-run/react 21.0.0, @highlight-run/cloudflare 3.1.0 oraz @highlight-run/sourcemap-uploader 0.6.3. Cały ten zestaw pochodzi z sierpnia 2025 roku i nie dostanie już poprawek.

Drugi: mylenie highlight.run z produktem. Nowe wersje tego pakietu wychodzą regularnie, ostatnia tydzień temu, i łatwo z tego wyciągnąć wniosek, że projekt ma się dobrze. Nie ma. Wersje wychodzą, bo @launchdarkly/observability i @launchdarkly/session-replay przypinają go dokładnie i muszą dostawać aktualizacje. To zależność cudzego SDK, nie utrzymywany produkt.

Trzeci: mieszanie generacji w jednym projekcie. @highlight-run/node 3.12.22 wymaga highlight.run w wersji dokładnie 9.20.0, podczas gdy pakiety LaunchDarkly wymagają dokładnie 10.7.1. Oba przypięcia są sztywne, więc menedżer pakietów zainstaluje dwie kopie biblioteki w różnych wersjach. Dwie kopie rejestrują nasłuchy na tych samych zdarzeniach przeglądarki, co kończy się zduplikowanymi zdarzeniami albo cichą utratą części z nich.

Czwarty: uruchomienie zestawu z docker/.env bez podniesienia tagu obrazów. Dostajesz docker-v0.5.2 z 30 stycznia 2025 roku zamiast docker-v0.5.6 z sierpnia tego samego roku.

Piąty: oparcie audytu licencji wyłącznie na polu z rejestru. Zablokujesz @highlight-run/cloudflare, bo nie deklaruje licencji i nie zawiera pliku licencyjnego, a zarazem przepuścisz pakiety z notą Catamorphic Co., nie zauważając, że prawa autorskie należą już do innego podmiotu.

Szósty: linkowanie do dokumentacji Highlight.io w wewnętrznych materiałach. Każdy taki odsyłacz prowadzi dziś na stronę główną LaunchDarkly, bez informacji o tym, czego szukał czytelnik.

FAQ

Czy Highlight.io został przejęty przez LaunchDarkly

Wszystko na to wskazuje, choć nie znalazłem oficjalnego ogłoszenia. Domena przekierowuje na launchdarkly.com, pakiety npm wskazują repozytorium launchdarkly/observability-sdk, a pliki licencyjne w paczkach noszą notę "Copyright 2025 Catamorphic, Co.", czyli podmiotu prawnego LaunchDarkly. Ślad w metadanych pojawił się między 12 maja a 7 sierpnia 2025 roku.

Czy mogę nadal używać pakietu highlight.run

Technicznie tak, bo jest publikowany i ma licencję Apache 2.0. Praktycznie odradzam, chyba że korzystasz z niego przez oficjalne pakiety @launchdarkly/observability i @launchdarkly/session-replay. Poza tym kontekstem nie ma zarządzanej usługi, do której miałby wysyłać dane, ani dokumentacji pod publicznym adresem.

Czy repozytorium highlight/highlight jest zarchiwizowane

Nie. Zwraca 200, przyjmuje zmiany i ma otwarte zgłoszenia. Ruch ogranicza się jednak do poprawek bezpieczeństwa i utrzymania, a ostatnie wydanie obrazów, docker-v0.5.6, pochodzi z 8 sierpnia 2025 roku.

Czy da się jeszcze uruchomić Highlight u siebie

Tak, obrazy w GHCR odpowiadają, a docker/compose.yml jest kompletny. Zestaw wymaga jednak Kafki, ZooKeepera, ClickHouse, PostgreSQL z pgvector, Redisa i kolektora OpenTelemetry, a wszystkie wersje zależności pochodzą z pierwszej połowy 2025 roku i nie dostaną poprawek. Do produkcji z danymi użytkowników to zły wybór.

Co wybrać zamiast Highlight.io

Do nagrań sesji z wariantem u siebie OpenReplay. Do nagrań połączonych z analityką produktu PostHog. Do błędów Sentry. Do dzienników i śladów Axiom. Jeśli i tak używasz flag funkcji LaunchDarkly, ich własne pakiety obserwowalności są najkrótszą drogą, bo w środku uruchamiają ten sam kod.

Jaka licencja obowiązuje kod Highlight

Biblioteki klienckie są na Apache 2.0 z prawami autorskimi Catamorphic Co. Repozytorium serwera jest na Apache 2.0 poza katalogiem enterprise/, objętym własną licencją komercyjną wymagającą subskrypcji na warunkach, których adres przekierowuje dziś na launchdarkly.com. Pakiet @highlight-run/cloudflare 3.1.0 nie deklaruje licencji i nie zawiera pliku licencyjnego.

Czytaj dalej

Używamy cookies, żeby zwiększyć Twoje doświadczenia na stronie