Obtenha os logs do driver Spark usando APIs de monitoramento do Spark

Este artigo explica como obter os registros do driver do Spark.

Permissões

O chamador precisa ter permissão de “leitura” no item.

Escopos delegados obrigatórios

Item.Read.All ou Item.ReadWrite.All ou um dos três grupos a seguir (de acordo com o item que disparou o aplicativo Spark).

  • Notebook.Read.All ou Notebook.ReadWrite.All
  • SparkJobDefinition.Read.All ou SparkJobDefinition.ReadWrite.All
  • Lakehouse.Read.All ou Lakehouse.ReadWrite.All

Identidades com suporte do Microsoft Entra

Esta API dá suporte às identidades do Microsoft listadas nesta seção.

Identidade Apoio
Utilizador Sim
Entidade de serviço e identidades gerenciadas Sim

Obter metadados de log do driver

Obtenha metadados de um arquivo de log do driver de um aplicativo Spark.

Interfase

Com attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/logs?type=driver&meta=true&fileName={fileName} 

Sem attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/logs?type=driver&meta=true&fileName={fileName} 

Parâmetros de URI

Nome No Obrigatório Tipo Descrição
ID do espaço de trabalho caminho Verdade cadeia de caracteres uuid O identificador do espaço de trabalho.
itemId caminho Verdade cadeia de caracteres uuid A ID do item do notebook, a definição de tarefa do Spark, ou o Lakehouse.
livyId caminho Verdade cadeia de caracteres uuid A ID da sessão do Livy.
ID do aplicativo caminho Verdade cadeia O ID do aplicativo Spark, como application_1704417105000_0001.
attemptId caminho Falso int A ID da tentativa dessa ID do aplicativo. Se não for especificado, o ID da última tentativa será usado.
nome do arquivo consulta Verdade cadeia O nome do arquivo específico do qual obter os metadados.

Corpo da solicitação

Nenhum

Respostas

Nome Tipo Descrição
200 OK ContainerLogMeta Solicitação concluída com sucesso

Exemplos

Solicitação de exemplo

GET https://api.fabric.microsoft.com/v1/workspaces/aaaabbbb-0000-cccc-1111-dddd2222eeee/notebooks/bbbbcccc-1111-dddd-2222-eeee3333ffff/livySessions/ccccdddd-2222-eeee-3333-ffff4444aaaa/applications/application_1741176604085_0001/logs?type=driver&meta=true&fileName=stderr 

Resposta de exemplo

Código de status: 200

{ 
   "containerId": "container_1741176604085_0001_01_000001", 
   "nodeId": "vm-76895939:44851" 
   "containerLogMeta": { 
      "fileName": "stderr", 
      "length": 99067, 
      "lastModified": "2025-03-05T12:31:31.000GMT", 
      "creationTime": "2025-03-05T10:30:30.000GMT", 
      "metaData": {} 
   } 
} 

Obter metadados de log do driver sem interrupção

Obtenha metadados de arquivos de log rotativos do driver de um aplicativo Spark.

Interfase

Com attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/logs?type=rollingdriver&meta=true 

Sem attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/logs?type=rollingdriver&meta=true

Com parâmetros opcionais:

Com attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/logs?type=rollingdriver&meta=true&filenamePrefix={filenamePrefix}&offset={offset}&maxResults={maxResults}

Sem attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/logs?type=rollingdriver&meta=true&filenamePrefix={filenamePrefix}&offset={offset}&maxResults={maxResults}

Parâmetros de URI

Nome No Obrigatório Tipo Descrição
ID do espaço de trabalho caminho Verdade cadeia de caracteres uuid O identificador do espaço de trabalho.
itemId caminho Verdade cadeia de caracteres uuid A ID do item do notebook, a definição de tarefa do Spark, ou o Lakehouse.
livyId caminho Verdade cadeia de caracteres uuid A ID da sessão do Livy.
ID do aplicativo caminho Verdade cadeia O ID do aplicativo Spark, como application_1704417105000_0001.
attemptId caminho Falso int A ID da tentativa dessa ID do aplicativo. Se não for especificado, o ID da última tentativa será usado.
filenamePrefix consulta Falso cadeia O prefixo de nomes de arquivo de log a serem filtrados pode ser “stdout” ou “stderr”.
deslocar, maxResults consulta Falso int O índice inicial e o número de arquivos de log a serem obtidos:
– Para o deslocamento, começa a partir de 0. O intervalo válido é de 0 a 20.000. O valor padrão é 0.
- Para maxResults, o intervalo válido é de 1 a 3.000. O valor padrão é 3.000.

Corpo da solicitação

Nenhum

Respostas

Nome Tipo Descrição
200 OK ContainerLogMeta Solicitação concluída com sucesso

Exemplos

Solicitação de exemplo

GET https://api.fabric.microsoft.com/v1/workspaces/aaaabbbb-0000-cccc-1111-dddd2222eeee/notebooks/bbbbcccc-1111-dddd-2222-eeee3333ffff/livySessions/ccccdddd-2222-eeee-3333-ffff4444aaaa/application/application_1725346176782_0001/logs?type=rollingdriver &meta=true&filenamePrefix=stderr

Resposta de exemplo

Código de status: 200

{
	"containerId": "container_1725346176782_0001_01_000001",
	"nodeId": "vm-fe289417:42885",
	"containerLogMeta": [
		{
			"fileName": "stderr",
			"length": 205541,
			"lastModified": "2024-09-03T07:10:31.000GMT",
			"metaData": {}
		},
		{
			"fileName": "stderr-2024-09-03-06",
			"length": 100030,
			"lastModified": "2024-09-03T06:50:45.000GMT",
			"metaData": {}
		},
		{
			"fileName": "stderr-active",
			"length": 105511,
			"lastModified": "2024-09-03T07:10:31.000GMT",
			"metaData": {}
		}
	]
}

Obter o conteúdo do log do driver

Obtenha o conteúdo do arquivo de log do driver de um aplicativo Spark.

Interfase

Com attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/logs?type=driver&fileName={fileName}

Sem attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/logs?type=driver&fileName={fileName} 

Com parâmetros opcionais:

Com attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/logs?type=driver&fileName={fileName}&containerId={containerId}&isDownload={isDownload}&isPartial={isPartial}&offset={offset}&size={size}

Sem attemptId

https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/logs?type=driver&fileName={fileName}&containerId={containerId}&isDownload={isDownload}&isPartial={isPartial}&offset={offset}&size={size}

Parâmetros de URI

Nome No Obrigatório Tipo Descrição
ID do espaço de trabalho caminho Verdade cadeia de caracteres uuid O identificador do espaço de trabalho.
itemId caminho Verdade cadeia de caracteres uuid A ID do item do notebook, a definição de tarefa do Spark, ou o Lakehouse.
livyId caminho Verdade cadeia de caracteres uuid A ID da sessão do Livy.
ID do aplicativo caminho Verdade cadeia O ID do aplicativo Spark, como application_1704417105000_0001.
attemptId caminho Falso int A ID da tentativa dessa ID do aplicativo. Se não for especificado, o ID da última tentativa será usado.
nome do arquivo consulta Verdade cadeia O nome do arquivo específico do qual obter o conteúdo
ID do contêiner consulta Falso cadeia A ID do contêiner do driver específico. Deixe-o não especificado se você não tiver certeza do que é a ID do contêiner do driver.
isDownload consulta Falso Bool True para baixar o arquivo de log como um fluxo. Padrão como false.
isPartial consulta Falso Bool Só entra em vigor quando isDownload é verdadeiro. True para baixar uma parte do conteúdo do arquivo de acordo com o deslocamento e o tamanho fornecidos. Padrão como false para baixar todo o arquivo.
deslocamento, tamanho consulta Falso longo O deslocamento inicial (em bytes) e o tamanho (em bytes) para ler o conteúdo do arquivo. Só terá efeito quando isDownload = true e isPartial = true
– Para o deslocamento, começa a partir de 0. O intervalo válido é de 0 a 20.000. O valor padrão é 0.
- Para o tamanho, o valor padrão é 1M (1024*1024) bytes.
Observe que o parâmetro "deslocamento" só é válido enquanto o aplicativo Spark ainda está em execução. Depois que o aplicativo parar de ser executado, o parâmetro não terá efeito. Em vez disso, considere usar logs rotativos de driver.

Corpo da solicitação

Nenhum

Respostas

Nome Tipo Descrição
200 OK Solicitação concluída com sucesso

Exemplos

Solicitação de exemplo

GET https://api.fabric.microsoft.com/v1/workspaces/aaaabbbb-0000-cccc-1111-dddd2222eeee/notebooks/bbbbcccc-1111-dddd-2222-eeee3333ffff/livySessions/ccccdddd-2222-eeee-3333-ffff4444aaaa/application/application_1731308630223_0001/logs?type=driver&fileName=stderr&isDownload=true&isPartial=true&offset=100&size=1000

Definições

ContainerLogMeta

Objeto

Metadados de arquivos de log com as informações de contêiner e nó correspondentes

Nome Tipo Descrição
ID do contêiner cadeia A ID do contêiner em que o driver ou executor está hospedado
nodeId cadeia A ID do nó em que o contêiner está localizado
containerLogMeta Um único FileMeta ou uma lista de FileMeta Os metadados de um arquivo ou uma lista de arquivos