Skip to main content
De opensource-CLI van LogBrew leest telemetrie en beheert accountgegevens vanuit een terminal. Begin met de CLI-handleiding voor installatie, inloggen en veelvoorkomende taken.

Hoe de CLI werkt

Gebruik leesbare tekst in een terminal. Gebruik --json in scripts en coding agents. Voor leesacties op je account moet je met je account inloggen. Voer logbrew status --json uit voordat je een login start. Een persoon moet de autorisatie in de browser afronden. Ingest-sleutels van projecten versturen telemetrie. Ze kunnen een accountlogin niet vervangen. Deze acties wijzigen accountgegevens: een project of sleutel maken, de issuestatus, prioriteit of toewijzing wijzigen, een deployment registreren en een supportticket bijwerken. Controleer voordat je zo’n opdracht uitvoert of de actie en het doel kloppen. Voer logbrew --help uit om alle opdrachten te zien. Voeg --help toe aan een opdracht, zoals logbrew read logs --help, om de opties ervan te zien. Voer logbrew help json uit voor de JSON-regels.

Een doctor-rapport van een project lezen

Gebruik een project-ID uit logbrew projects --json:
De opdracht leest de projectstatus en één recente log. Ze maakt geen project, wijzigt geen sleutel en registreert geen installatie. Het rapport heeft status, checks en next. Elke controle heeft check, status en next. De controles zijn api, auth, project, ingest_key, setup, telemetry en logs. Exitcode 0 betekent dat de CLI een rapport heeft geschreven. Het betekent niet dat het project klaar is. Lees de status van het rapport en elke controle. Een controle met not_checked is niet geslaagd. Slaagt het lezen van het project, dan is de controle logs visible, empty, unavailable, error of invalid_response. Deze controle verandert de status van het rapport niet. Een leeg logresultaat zegt niets over andere signalen. Een mislukte leesactie is geen leeg resultaat. Gebruik next als hulp bij herstel. Het geeft geen toestemming om de status van het account of project te wijzigen.

Voorbeeld: accounttoegang ontbreekt

Zonder toegangsgegevens van een account doet de opdracht geen API-request. Ze schrijft dit rapport naar standaarduitvoer en stopt met exitcode 0:
Dit rapport is iets anders dan de projectdiagnose van de API. Het bevat niet de API-velden state, setup_status of next_action.

Filters

--since accepteert een duur zoals 24h of 7d, of een RFC 3339-tijdstempel. --until accepteert een RFC 3339-tijdstempel. Het is een exclusieve eindtijd en moet later zijn dan --since. Bij het lezen van één issue op ID werkt --until niet. Logernst is info, warning, error of critical. De issuestatus is de workflowstatus van het issue, niet de ernst. --status ignored is een oudere naam voor --status archived. --status open betekent unresolved, en --status closed betekent resolved. --assignee none selecteert issues die aan niemand zijn toegewezen, en --assignee my_teams selecteert de issues van je teams. Elke andere waarde voor --assignee mislukt met invalid_assignee. De CLI accepteert ook deze aliassen: --project-id, --env, --service-name, --trace-id, --distinct-id en --level voor --severity. Gebruik in nieuwe scripts de namen uit de tabel. Deze opdracht leest de fouten van 1 dag:
Het project-ID selecteert het project. De servicenaam selecteert een component in dat project. Zet aanhalingstekens rond waarden met spaties:
Zet -- vóór zoektekst die met een koppelteken begint:

Een voorval van een issue kiezen

Een issue groepeert overeenkomende voorvallen. Lees het issue voor de status, het aantal voorvallen en de tijden van eerst en laatst gezien:
Gebruik explain issue of investigate issue voor bewijs uit één voorval. Zonder --occurrence kiest LogBrew het aanbevolen voorval. Dat is niet altijd het nieuwste event. Zo lees je het nieuwste event:
--occurrence accepteert ook recommended, first of een voorval-ID dat LogBrew heeft teruggegeven. Deze opdrachten weigeren filters voor project, release, omgeving en tijd. Lees de tijdstempel van het gekozen voorval voordat je bewijs vergelijkt. Zie Een issue onderzoeken voor de bewijsvelden.

Issuestatus en prioriteit wijzigen

Gebruik 1 issue-ID om 1 issue te wijzigen:
archive zet archived, resolve zet resolved en reopen zet unresolved. De prioriteit is high, medium of low. Een prioriteit die je zelf instelt, blijft vast. Anders volgt de prioriteit de ernst van het issue. Voeg --project toe om meer dan 1 issue te wijzigen. Alle issues moeten in dat project staan. Eén opdracht wijzigt maximaal 100 issues:
Het resultaat heeft 1 item per issue. Elk item is updated, unchanged of not_found. Een issue met unchanged had de gevraagde waarde al. Na een netwerkfout kun je dezelfde opdracht opnieuw uitvoeren. Deze opdrachten vragen niet om bevestiging. Controleer eerst de issue-ID’s. Leesacties en wijzigingen van issues tonen archived in plaats van ignored, en de priority, priority_source en assignee van elk issue. Zie de issueresponse.

Issues toewijzen

Een issue heeft 0 of 1 toewijzing: één account of één team. Toon de accounts en teams aan wie je in een project issues kunt toewijzen:
Wijs 1 issue toe aan een account, aan jezelf met me of aan een team:
Hef de toewijzing op:
Voeg --project toe om maximaal 100 issues van dat project te wijzigen, net als bij status en prioriteit. Een account moet het project kunnen lezen, en een team moet bij de organisatie van het project horen. Zo vind je de issues die aan jou of je teams zijn toegewezen:
Tekstuitvoer toont de naam van het toegewezen account, of team #<slug> voor een team. Heeft het account geen naam, dan toont de uitvoer het e-mailadres en daarna het gebruikers-ID. Een issue dat aan niemand is toegewezen, toont unassigned.

Eigenaren, geschiedenis en de inbox

issues owners toont de voorgestelde eigenaren en het bewijs dat is gecontroleerd. issues ownership set verstuurt lokale bestanden van elk maximaal 128 KiB. Een leeg bestand wist de bijbehorende tekst. issues activity en inbox accepteren --limit van 1 tot 200, en --cursor-time met --cursor-id uit next_cursor. Zie Zoeken wie eigenaar is van een issue.

Ernstregels instellen

De ernst is info, warning, error, critical of source. source toont weer de vastgelegde ernst. --ignore verbergt overeenkomende logs in de standaardlijst met logs. Zonder --ignore toont de regel ze.

De volgende pagina lezen

Logs, issues, acties, metrics en traces ondersteunen cursorpaginering. Releases niet. Gebruik --pagination cursor voor de eerste pagina:
De response heeft logs en next_cursor. Een next_cursor die niet null is, heeft time en id. Stuur die mee met --cursor-time en --cursor-id:
Houd op elke pagina dezelfde filters en dezelfde limiet aan. Stop als next_cursor null is. Gebruik de cursor, niet het aantal rijen, om te bepalen of er meer pagina’s zijn. De laatste pagina kan leeg zijn:
Issues, acties en metrics gebruiken dezelfde vorm, met issues, actions of metrics in plaats van logs.

Live volgen

logbrew watch --json streamt live logs, issues en acties. Voeg logs, issues of actions toe om één type te streamen. tail, follow en stream zijn aliassen van watch. Watch ondersteunt geen traces of spans. Watch heeft --json nodig. Zonder die optie stopt de opdracht met exitcode 1 en schrijft ze deze tekst: watch streams JSON for agents. Issue-events in watch tonen een gearchiveerd issue als ignored, zonder prioriteit. Lees het issue om de huidige status en prioriteit te krijgen. Watch accepteert alleen --severity, zoals --severity error,critical. logbrew watch actions accepteert geen --severity. De CLI past dit filter toe nadat hij events heeft ontvangen. Het vermindert niet wat de server verstuurt. Watch heeft geen filter voor project, release, omgeving of tijd. Gebruik voor die filters een read-opdracht. Na een tijdelijke onderbreking van de verbinding wacht de CLI en maakt hij opnieuw verbinding.

Resultaten en fouten lezen

Zet --json vóór of na de opdracht. Lees de exitcode voordat je de uitvoer gebruikt. Parse geen uitvoer die voor mensen bedoeld is. Die kan per versie veranderen. Succesuitvoer behoudt de vorm van de API-response. Dat kan een array of een object zijn. Zonder cursorpaginering geeft het lezen van logs een array terug. Een lege array betekent dat er geen logs overeenkomen. Het is geen fout. Fouten gaan naar standaardfout. De uitzondering is debug-artifacts --json, dat fouten naar standaarduitvoer schrijft. Een JSON-fout heeft ok, error, message en next. Gebruik error als stabiele foutcode. Bekijk next goed voordat je de opdracht uitvoert die het voorstelt. logbrew watch traces --json stopt bijvoorbeeld met exitcode 2 en schrijft:
logbrew read logs --limit 0 --json stopt met exitcode 2 en schrijft:
Corrigeer de waarde en voer de opdracht opnieuw uit. Een geweigerde opdracht is geen leeg resultaat. Zie API-fouten voor HTTP-fouten en de referentie van de Telemetrie-API voor directe API-requests.