Felsöka Databricks CLI

Kommentar

Databricks CLI-användning omfattas av Databricks-licensen och Databricks sekretessmeddelande, inklusive eventuella användningsdatabestämmelser.

Använd följande information för att felsöka problem med Databricks CLI.

Aktivera loggning

Om ett kommando misslyckas eller inte ger förväntade utdata kan du använda loggning för att identifiera vad som kan ha gått fel. Du kan logga meddelanden som Databricks CLI matar ut om olika kommandohändelser, varningar och fel. Om du vill logga dessa meddelanden anger du följande Kommandoalternativ för Databricks CLI:

Flagga beskrivning
--log-file En sträng som representerar filen som utdataloggarna ska skrivas till. Om den här flaggan inte anges är standardvärdet att skriva utdataloggar till stderr.
--log-format text om du vill skriva utdataloggar till text eller json skriva utdataloggar till JSON. Om den här flaggan inte anges skrivs utdataloggarna som text.
--log-level En sträng som representerar loggformatnivån. Giltiga loggnivåer är error, warn, info, debug, traceoch disabled. Standardnivån är disabled, vilket innebär att ingenting loggas. --debug motsvarar --log-level debug.

I följande exempel loggar kommandot spårningsmeddelanden för det angivna kommandot till en fil med namnet databricks-cli.log i JSON-format.

databricks clusters list --log-file databricks-cli.log --log-format json --log-level trace

Det gick inte att ladda ned Terraform

En utgången nyckel i vissa versioner av Databricks CLI orsakar följande fel när du kör databricks bundle deploy:

error downloading Terraform: unable to verify checksums signature: openpgp: key expired

Lös det här felet genom att uppgradera Databricks CLI till en senaste korrigerad version, som uppdaterar verifieringsmekanismen så att den fungerar med en nyare nyckel. Uppgradera till den korrigerade versionen som motsvarar din aktuella CLI-delversion:

  • Binary install: Ladda ned den korrigerade versionen från Databricks CLI-versionssidan på GitHub.

  • setup-cli (som installationsskript eller GitHub åtgärd): Uppdatera versionen i konfigurationen till en korrigerad version från sidan Databricks CLI på GitHub.

    Om du till exempel vill använda 0.296.1 med åtgärden GitHub:

    - uses: databricks/setup-cli@main
      with:
        version: 0.296.1
    

Fel med lagrade autentiseringsuppgifter

Från och med Databricks CLI version 1.0.0 lagrar Databricks CLI autentiseringstoken från användare till dator (U2M) i OS-intern säker lagring (nyckelring på macOS, Credential Manager på Windows, D-Bus Secret Service på Linux) i stället för en JSON-fil. Se Tokenlagring. Om arbetsflödet bygger ovanpå JSON-filen fungerar det inte mot den nya lagringsmetoden och du kan stöta på problem i följande scenarier:

  • Uppgraderad till GA, ännu inte inloggad igen. Databricks CLI läser inte längre autentiseringsuppgifter som lagras av äldre versioner och returnerar ett fel:

    Stored credentials from older CLI versions are no longer used.
    Run "databricks auth login" to sign in again.
    
    If secure storage is not available in this environment, set
    DATABRICKS_AUTH_STORAGE=plaintext and re-run login.
    

    Kör databricks auth login för att lösa detta.

  • Säker lagringskontroll misslyckas vid inloggning Under databricks auth loginkontrollerar Databricks CLI den säkra lagringen innan OAuth-flödet startas. Om kontrollen misslyckas (vanligast i Linux-containrar, SSH-sessioner, WSL1 och huvudlösa servrar där D-Bus inte körs) beror beteendet på om säker lagring uttryckligen har konfigurerats:

    • Standardläge, ingen explicit lagringsinställning: Databricks CLI återgår tyst till klartext och skriver auth_storage = plaintext till avsnittet i [__settings__]~/.databrickscfg. Efterföljande kommandon använder klartext utan att kontrollera igen.
    • Explicit säkert läge (DATABRICKS_AUTH_STORAGE=secure eller auth_storage = secure i konfigurationsprofilen): Databricks CLI ger ett felmeddelande som pekar på reservlösningen DATABRICKS_AUTH_STORAGE=plaintext.

    Om kontrollen når tidsgränsen i stället för att misslyckas direkt (till exempel om nyckelringen är låst men kan nås), behåller Databricks CLI nyckelringsbakänden och OS-upplåsningsprompten körs parallellt med webbläsarens OAuth-flöde.

    Kontrollera vilket lagringsläge Databricks CLI använder efter inloggningen genom att köra databricks auth describe.

  • Nyckelringen kan inte nås när du läser en lagrad token. Till skillnad från vid inloggningen faller Databricks CLI inte tyst tillbaka när det inte kan nå nyckelringen vid tokenläsningstid. Om du till exempel loggade in på en stationär dator och sedan anslöt via SSH i en huvudlös session misslyckas kommandon som behöver den lagrade token med ett fel. Använd klartextalternativet för att åtgärda detta. Se Använda återställningen i klartext.

Kommandon slutförs inte

Om du kör ett kommando som databricks cluster list och det verkar hänga sig uppdaterar du din version av Databricks CLI till den senaste versionen. Tidigare versioner av CLI skulle försöka läsa in fullständiga listor även om antalet objekt i listan var stort och kommandot verkar inte slutföras.