- Categorias:
Funções do sistema (Informações do sistema)
SYSTEM$GET_JOB_STATUS¶
Recupera o status como um trabalho do Snowpark Container Services.
- Consulte também:
Sintaxe¶
SYSTEM$GET_JOB_STATUS( <job_uuid> [ , <timeout_secs> ] )
Argumentos¶
Obrigatório:
job_uuid
UUID atribuído pelo Snowflake do trabalho. Consulte as Notas de uso no tópico EXECUTE SERVICE para obter instruções sobre como encontrar o UUID.
Opcional:
timeout_secs
Número de segundos de espera para que o trabalho atinja um estado terminal (DONE ou FAILED) antes de retornar o status. Se o trabalho não atingir o estado terminal dentro do tempo especificado, o Snowflake retornará o estado atual.
Se não for especificado, o Snowflake retornará o estado atual imediatamente.
Padrão: 0 segundos
Retornos¶
Retorna informações de status em uma matriz JSON com um objeto JSON para cada contêiner de trabalho. Os campos JSON são:
status
. Status do contêiner de trabalho. Os valores de status atualmente suportados incluem: PENDING, FAILED, DONE e UNKNOWN.message
. Fornece detalhes sobre o status específico. Por exemplo, quando o status é PENDING, este campo descreve o motivo.containerName
. Nome do contêiner.instanceId
. ID da instância de trabalho. Para um trabalho, é sempre 0.serviceName
. UUID atribuído pelo Snowflake do trabalho.image
. URL da imagem que está sendo executada.restartCount
. Número de vezes que o Snowflake reiniciou o contêiner. Uma contagem de reinicializações mais alta pode indicar um trabalho não íntegro. Por exemplo, se o código do seu trabalho falhar, o contêiner poderá sair. Snowflake então tenta reiniciar o contêiner. Nesse caso, para investigar, você pode acessar o log do contêiner usando estas opções:Use SYSTEM$GET_JOB_LOGS para logs ativos (o contêiner está em execução).
Use tabelas de eventos para logs persistentes (úteis quando o contêiner não estiver mais em execução).
startTime
. Hora em que o contêiner foi iniciado.
Notas de uso¶
Somente o usuário que criou o trabalho pode acessar o status do trabalho.
Exemplos¶
A função a seguir recupera o status do trabalho especificado:
SELECT SYSTEM$GET_JOB_STATUS('01acc9da-0000-60e8-0000-0e9900201012');
Exemplo de saída:
[
{
"status":"DONE",
"message":"Container finished",
"containerName":"main",
"instanceId":"0",
"serviceName":"JOB_01ACC9DA000060E800000E9900201012",
"image":"<account>.registry.snowflakecomputing.com/tutorial_db/data_schema/tutorial_repository/my_job_image:tutorial",
"restartCount":0,
"startTime":"2023-01-01T00:00:00Z"
}
]