Enviar registros de execução para o Cloud Logging

O Workflows gera registros de execução para execuções de fluxo de trabalho no Cloud Logging automaticamente.

Também é possível ativar o registro de chamadas. Ou, ainda, criar registros personalizados que usam a função sys.log na origem. O registro de chamadas e os registros personalizados permitem controlar quando os registros são enviados para o Logging durante uma execução de fluxo de trabalho e podem ser particularmente úteis para depurar seu fluxo de trabalho.

Para detalhes, incluindo os arquivos proto de geração de registros engine_call e executions_system, consulte este repositório do GitHub.

Registros de execução

Cada execução de fluxo de trabalho aciona automaticamente pelo menos dois registros: um no início da execução e outro no final.

Para mais informações sobre os registros da plataforma do Workflows disponíveis no Logging, consulte Registros do Google Cloud Platform.

Registro de chamadas

É possível definir uma sinalização para que cada etapa de chamada durante a execução do fluxo de trabalho seja registrada, assim como os nomes de etapas, nomes de funções, argumentos de função e respostas de chamada. Também é possível registrar exceções que são detectadas ou que interrompem uma chamada.

Somente as etapas explícitas da chamada são registradas, como chamadas para subfluxos de trabalho ou funções de biblioteca. Chamadas de expressões ou dentro de funções de biblioteca padrão (por exemplo, http.post em sys.log) e conectores internos não são registrados.

Os cabeçalhos de solicitação HTTP Authorization são editados nos registros de chamadas HTTP.

Ao aplicar o registro de chamadas a uma definição de fluxo de trabalho ou à execução de um fluxo de trabalho, é possível especificar o nível de registro necessário. O nível de registro de execução tem precedência sobre qualquer nível de registro de fluxo de trabalho, a menos que o nível de registro de execução não seja especificado (padrão). Nesse caso, o nível de registro de fluxo de trabalho é aplicado.

O limite de tamanho da entrada de registro definido pelo Cloud Logging também se aplica à geração de registros de chamadas.

Registros personalizados

Para criar uma entrada de registro no Logging durante uma execução de fluxo de trabalho, defina uma etapa no fluxo que faz uma chamada para a função sys.log padrão da biblioteca:

YAML

  - step1:
      assign:
          - varA: "Hello"
          - varB: "World"
  - logStep:
      call: sys.log
      args:
          text: TEXT
          severity: SEVERITY 
  - step2:
      return: ${varA + " " + varB}
    

JSON

    [
      {
        "step1": {
          "assign": [
            {
              "varA": "Hello"
            },
            {
              "varB": "World"
            }
          ]
        }
      },
      {
        "logStep": {
          "call": "sys.log",
          "args": {
            "text": "TEXT",
            "severity": "SEVERITY"
          }
        }
      },
      {
        "step2": {
          "return": "${varA + " " + varB}"
        }
      }
    ]
      

Ao criar uma entrada de registro, defina:

  • TEXT: obrigatório. O texto a ser registrado. Se você precisar registrar os valores de um mapa, use ${json.encode_to_string(myMap)}.
  • SEVERITY: opcional. O nível de gravidade da entrada de registro. Por exemplo, INFO, WARNING ou CRITICAL.

Para mais informações, consulte a função de referência sys.log.

Permissões necessárias

Para aplicar o registro de chamadas ou enviar registros personalizados ao Logging, um fluxo de trabalho precisa estar associado a uma conta de serviço que inclua a permissão logging.logEntries.create, por exemplo, o papel roles/logging.logWriter. Se você precisar alterar a conta de serviço atualizada com seu fluxo de trabalho, consulte Atualizar um fluxo de trabalho. Para saber mais sobre como criar contas de serviço e atribuir papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Ver registros do fluxo de trabalho

É possível ver os registros no Workflows ou no Logging. Para ver os registros de um único fluxo de trabalho, use a guia Registros do Workflows. Para ter uma visualização agregada dos registros de todos os fluxos de trabalho, use a página Explorador de registros do Logging.

Ver registros no Workflows

Para ver os registros de um fluxo de trabalho no Workflows, faça o seguinte:

  1. No console do Google Cloud, acesse a página Fluxos de trabalho.

    Acessar fluxos de trabalho

  2. Para acessar os registros de um fluxo de trabalho, clique no nome dele para acessar a página Detalhes.

  3. Para visualizar os registros, clique em Registros.

  4. Para filtrar os registros por gravidade, selecione o tipo de registro a ser exibido na lista Padrão. Por padrão, os registros de todos os níveis de gravidade são exibidos.

A guia Registros na página Detalhes de um fluxo de trabalho exibe os seguintes tipos de registros:

  • Registros enviados para o Logging

  • Registros de auditoria de qualquer operação realizada no fluxo de trabalho, como atualizações na definição do fluxo de trabalho

Ver registros no Logging

Para ver os registros no Logging, faça o seguinte:

  1. No console do Google Cloud, acesse a página Análise de registros:

    Acessar o Explorador de registros

  2. No Criador de consultas, clique em Recurso e digite workflow. Selecione Cloud Workflow na lista e clique em Adicionar.

    Geração de registros de fluxo de trabalho

  3. Clique em Run query.

Para saber mais sobre como visualizar registros no Logging, consulte Usar o Explorador de registros.

A seguir