Udgivelse af kafkalet 0.1, en desktopklient til Apache Kafka

Kafkalet 0.1, en grafisk desktopklient til Apache Kafka, er blevet udgivet. Applikationen leveres som en selvstændig binær fil på cirka 15 MB og kræver ikke installation af en JVM, Docker eller kørende serverkomponenter. Projektets kode er skrevet i Go og TypeScript og distribueres under MIT-licensen. Builds er tilgængelige til macOS (Intel og Apple Silicon), Windows og Linux.

I modsætning til eksisterende webbaserede værktøjer som Kafka UI og AKHQ, der kræver implementering af en serverproces i Docker, kører kafkalet som en almindelig desktopapplikation – svarende til DBeaver eller DataGrip til databaser. Indtil nu var den eneste desktop-Kafka-klient Offset Explorer (tidligere Kafka Tool), skrevet i Java og ikke opdateret i lang tid. kafkalet er bygget på Wails v2-frameworket, som kombinerer en Go-backend med en webgrænseflade skrevet i React 18, TypeScript og shadcn/ui i en enkelt native binær fil. Til interaktion med Kafka bruges franz-go-biblioteket, implementeret i ren Go uden afhængigheder af librdkafka eller CGO.

Nøglefunktioner:

  • Et profilsystem til administration af flere miljøer (produktion, staging og dev). Hver mægler i en profil kan have flere navngivne konti med mulighed for hurtigt at skifte mellem dem. Adgangskoder og tokens gemmes udelukkende i operativsystemets systemhemmelighedslager (macOS Keychain, Windows Credential Manager eller libsecret på Linux) og skrives ikke til konfigurationsfiler.
  • Observatørtilstand læser beskeder fra et emne uden at oprette forbindelse til en forbrugergruppe, uden at committe offsets og uden klynge-bivirkninger. En separat forbrugertilstand giver dig mulighed for at oprette forbindelse til gruppen og committe offsets manuelt.
  • Søge efter tidsstempel på navigation – naviger til meddelelser efter en bestemt dato og et bestemt klokkeslæt uden manuelt at beregne forskydninger. Understøttede godkendelsesmetoder: SASL PLAIN, SCRAM-SHA-256, SCRAM-SHA-512, OAUTHBEARER (statisk token- og klientlegitimationsflow), TLS med certifikatverifikation server, mTLS (gensidig certifikatgodkendelse).
  • Streaming af beskedvisning med realtids regex-filtrering for nøgler og værdier. Samtidig overvågning af flere emner i separate faner understøttes. Listevirtualisering giver mulighed for visning af over 50.000 beskeder uden at påvirke ydeevnen.
  • Emnehåndtering: oprettelse, sletning, ændring af konfigurationsparametre, visning af partitioner, ledere og sættet af synkroniserede replikaer (ISR).  Udgivelse af kafkalet 0.1, en desktopklient til Apache Kafka
  • Administration af forbrugergrupper: visning af forsinkelse efter partition, nulstilling af forskydninger til tidligste, seneste eller et specifikt tidsstempel, visning af gruppemedlemmer (klient-ID, vært, tildelte emner), sletning af grupper.
  • Sender beskeder med angivet nøgle, værdi, overskrifter og målsektion.  Udgivelse af kafkalet 0.1, en desktopklient til Apache Kafka
  • Emneorganisering: fastgør ofte brugte emner, grupper dem i navngivne mapper, søg med understøttelse af regulære udtryk og filtrering efter et minimum antal sektioner.
  • Eksporter beskedbuffer i JSON- eller CSV-format.
  • Integration med Confluent Schema Registry til automatisk afkodning af Avro-meddelelser.
  • Et system af JavaScript-plugins til brugerdefineret afkodning af beskeder (Protobuf, MessagePack og andre formater).
  • Importér og eksportér indstillinger i JSON-format, inklusive profiler, emnegrupper og fastgjorte emner.

Kilde: opennet.ru

Tilføj en kommentar