Envie registos de execução para o Cloud Logging

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

Também pode ativar o registo de chamadas. Em alternativa, pode criar registos personalizados que usam a função sys.log na sua origem. O registo de chamadas e os registos personalizados permitem-lhe controlar quando os registos são enviados para o registo durante a execução de um fluxo de trabalho e podem ser particularmente úteis ao depurar o fluxo de trabalho.

Para ver detalhes, incluindo os ficheiros proto de registo engine_call e executions_system, consulte este repositório do GitHub.

Registos de execução

Cada execução do fluxo de trabalho aciona automaticamente, pelo menos, dois registos de execução: um no início de uma execução e outro no final.

Para mais informações sobre os registos da plataforma Workflows que estão disponíveis no Logging, consulte os Google Cloud registos da plataforma.

Registo de chamadas

Pode definir uma flag para que cada passo de chamada durante a execução do fluxo de trabalho seja registado, e os nomes dos passos, os nomes das funções, os argumentos das funções e as respostas das chamadas sejam devolvidos. Em alternativa, pode registar quaisquer exceções detetadas ou que interrompam uma chamada.

Apenas são registados passos de chamadas explícitos; por exemplo, chamadas para subfluxos de trabalho ou funções de biblioteca. As chamadas de dentro das expressões ou das funções da biblioteca padrão (por exemplo, http.post em sys.log) e dentro dos conetores não são registadas.

Os cabeçalhos de pedidos HTTP Authorization são ocultados dos registos de chamadas HTTP.

Quando aplica o registo de chamadas a uma definição de fluxo de trabalho ou à execução de um fluxo de trabalho, pode especificar o nível de registo necessário. O nível de registo de execução tem precedência sobre qualquer nível de registo do fluxo de trabalho, a menos que o nível de registo de execução não seja especificado (predefinição). Nesse caso, aplica-se o nível de registo do fluxo de trabalho.

Tenha em atenção que o limite de tamanho das entradas de registo definido pelo Cloud Logging também se aplica ao registo de chamadas.

Registos personalizados

Para criar uma entrada do registo no Logging durante uma execução do fluxo de trabalho, defina um passo no fluxo de trabalho que faça uma chamada para a função sys.log da biblioteca padrão:

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}"
        }
      }
    ]
      

Quando cria uma entrada de registo, defina o seguinte:

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

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

Autorizações necessárias

Para aplicar o registo de chamadas ou enviar registos personalizados para o Logging, tem de associar um fluxo de trabalho a uma conta de serviço que inclua a autorização logging.logEntries.create (por exemplo, a função roles/logging.logWriter). Se precisar de alterar a conta de serviço atualizada com o seu fluxo de trabalho, consulte o artigo Atualize um fluxo de trabalho. Para saber como criar contas de serviço e atribuir funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Veja os registos do fluxo de trabalho

Pode ver os registos em Fluxos de trabalho ou em Registo. Para ver os registos de um único fluxo de trabalho, use o separador Registos em Fluxos de trabalho. Para obter uma vista agregada dos registos de todos os seus fluxos de trabalho, use a página Explorador de registos no Logging.

Veja registos nos fluxos de trabalho

Para ver os registos de um fluxo de trabalho nos fluxos de trabalho, faça o seguinte:

  1. Na Google Cloud consola, aceda à página Fluxos de trabalho:

    Aceda a Fluxos de trabalho

  2. Para aceder aos registos de um fluxo de trabalho, clique no nome do fluxo de trabalho para aceder à página Detalhes.

  3. Para ver os registos, clique em Registos.

  4. Para filtrar os registos por gravidade, na lista Predefinição, selecione o tipo de registo a apresentar. Por predefinição, são apresentados registos de todos os níveis de gravidade.

O separador Registos na página Detalhes de um fluxo de trabalho apresenta os seguintes tipos de registos:

  • Registos enviados para o registo

  • Registos de auditoria de quaisquer operações realizadas no fluxo de trabalho, como atualizações à definição do fluxo de trabalho

Ver registos no Logging

Para ver registos no Logging, faça o seguinte:

  1. Na Google Cloud consola, aceda à página Explorador de registos:

    Aceda ao Explorador de registos

  2. No criador de consultas, clique em Recurso e introduza workflow. Selecione Fluxo de trabalho na nuvem na lista e clique em Adicionar.

    Registo de fluxos de trabalho

  3. Clique em Executar consulta.

Para saber mais sobre como ver registos no Logging, consulte o artigo Use o Explorador de registos.

O que se segue?