Além de enviar conteúdo para os destinos incorporados do Looker, pode usar ações, também denominadas integrações, para enviar conteúdo para serviços de terceiros integrados com o Looker através de um servidor do centro de ações.
Esta página explica as opções para criar ações personalizadas que pode pedir para adicionar ao Action Hub do Looker ou adicionar ao seu próprio servidor privado do Action Hub. Esta página também descreve como ativar um servidor do centro de ações local para testar as suas ações personalizadas ou executar um servidor do centro de ações privado.
Para começar a usar ações, pode:
- Usar as ações existentes do Looker disponíveis no Centro de ações do Looker.
- Crie e publique uma ação personalizada no Action Hub do Looker para utilização pública.
- Crie e publique uma ação personalizada num servidor do centro de ações privado para utilização privada.
Assim que a ação for adicionada ao centro de ações, um administrador do Looker pode ativar a ação para utilização na entrega de conteúdo do Looker a esses serviços.
Também pode configurar vários centros de ações se quiser usar as integrações do Looker através do Looker Action Hub e alojar as suas próprias ações privadas ou personalizadas. As ações de cada centro de ações aparecem na página Ações do painel Administração.
O Centro de ação do Looker
O Looker aloja e fornece o Centro de ação do Looker, um servidor sem estado que implementa a API Action do Looker e expõe ações populares. Todos os dados que os seus utilizadores enviam através de uma ação são processados temporariamente no servidor do Looker Action Hub e não na sua instância do Looker.
O Looker já está integrado com vários serviços. Consulte a página de documentação Definições de administrador – Ações para saber como ativar estes serviços existentes.
Requisitos do Centro de ação do Looker
O Centro de ação do Looker tem de conseguir enviar e receber pedidos de API das seguintes formas:
- Da instância do Looker para a rede do Centro de ação do Looker
- Do navegador do utilizador do Looker para a rede do centro de ação do Looker
- Da rede do Centro de ação do Looker para a instância do Looker
Se a sua implementação do Looker não conseguir processar estes pedidos ou se a funcionalidade Lista de autorizações de IPs estiver ativada na sua instância do Looker, considere configurar um servidor do hub de ações local para publicar integrações do Looker privadas ou ações personalizadas. Os administradores de instâncias alojadas pelo cliente também podem implementar um servidor de ações local especificamente para ações de streaming e OAuth.
Pedidos da instância do Looker para a rede do Centro de ação do Looker
As solicitações são actions.looker.com
resolvidas para um endereço IP dinâmico. Os pedidos de saída da instância do Looker têm de conseguir alcançar os seguintes pontos finais:
actions.looker.com/
actions.looker.com/actions/<name>/execute
actions.looker.com/actions/<name>/form
onde name
é o nome programático da ação.
Pedidos do navegador do utilizador do Looker para a rede do Centro de ação do Looker
O navegador do utilizador do Looker tem de conseguir fazer pedidos aos seguintes pontos finais do Centro de ação do Looker (para OAuth):
actions.looker.com/actions/<name>/oauth
onde name
é o nome programático da ação.
Pedidos da rede do Centro de ação do Looker para a instância do Looker
O Action Hub do Looker tem de fazer pedidos à instância do Looker para ações que suportem resultados transmitidos ou que usem o OAuth.
Uma ação de streaming permite que a ação consuma consultas que fornecem Todos os resultados. As ações ativadas com OAuth usam a autenticação por utilizador através de fluxos do OAuth 2.0. As ações OAuth têm de armazenar as credenciais do utilizador na respetiva instância do Looker de origem, uma vez que o Looker Action Hub não tem estado e é multi-inquilino, e não armazena credenciais específicas do utilizador de qualquer tipo.
Os pedidos do Centro de ações do Looker para uma instância do Looker assumem as seguintes formas:
GET <host_looker_url>/downloads/<random_40_char_token>
POST <host_looker_url>/action_hub_state/<random_40_char_token>
Estes URLs são gerados no momento na instância do Looker antes de serem enviados para o Looker Action Hub. Por este motivo, o Action Hub do Looker tem de conseguir resolver o <host_looker_url>
para um endereço IP e fazer pedidos na rede em que a sua instância do Looker reside.
O Looker Action Hub tem endereços IP de saída estáticos a partir dos quais os pedidos são sempre enviados: 35.153.89.114
, 104.196.138.163
e 35.169.42.87
. Os administradores de instâncias alojadas no Looker que ativaram a lista de autorizações de IPs têm de adicionar estes endereços IP para usar quaisquer ações que suportem resultados em streaming ou que usem OAuth.
Considerações para instâncias alojadas pelo cliente
Para usar as integrações do Looker, o Action Hub do Looker tem de conseguir comunicar com a instância do Looker e cumprir os requisitos do Action Hub do Looker. Isto nem sempre é possível com instâncias do Looker alojadas pelo cliente, por vários motivos. Se a comunicação bidirecional entre o Action Hub do Looker e a instância do Looker não for possível, o Action Hub do Looker pode apresentar um comportamento inesperado ou indesejável, como consultas pendentes ou ações indisponíveis.
Para resolver o potencial problema de o Action Hub do Looker não conseguir comunicar com a instância do Looker, os administradores do Looker podem implementar uma das soluções apresentadas mais adiante nesta página. A solução ou a combinação de soluções adequadas dependem da arquitetura da instância do Looker:
Se a instância alojada pelo cliente não for resolvível pelo Looker Action Hub, ou seja, o Looker Action Hub não puder receber pedidos da instância do Looker, os administradores do Looker podem contactar um especialista de vendas do Google Cloud para ativar a funcionalidade de licença
public_host_url
. Essa funcionalidade de licença revela a--public-host-url
opção de arranque, que permite aos administradores especificar um nome de anfitrião<public_host_url>
resolvível diferente do<host_looker_url>
da instância. Opublic_host_url
substitui o nome do anfitrião para alguns URLs de callback específicos do Action Hub do Looker e encaminha esses URLs de callback através de um proxy inverso que tem opublic_host_url
como um nome resolvível publicamente. Este proxy inverso aceita pedidos apenas dos endereços IP de saída estáticos para o Looker Action Hub. Os administradores do Looker que usam este método têm de adicionar à lista de autorizações os endereços IP de saída a partir dos quais o Looker Action Hub faz pedidos à instância do Looker:35.153.89.114
,104.196.138.163
e35.169.42.87
.Se o URL da instância alojada pelo cliente for resolvível pela instância do Looker, mas o Action Hub do Looker não conseguir enviar pedidos para a instância do Looker, os utilizadores podem não conseguir configurar nem usar ações que suportem resultados transmitidos ou que usem OAuth. Para resolver este problema, os administradores do Looker têm de adicionar à lista de autorizações os endereços IP de saída a partir dos quais o Looker Action Hub faz pedidos à instância do Looker:
35.153.89.114
,104.196.138.163
e35.169.42.87
.Se nenhuma das soluções mencionadas for adequada para a arquitetura da instância do Looker, os administradores do Looker podem implementar um centro de ações alojado pelo cliente para todas as ações ou apenas para ações que suportem resultados transmitidos ou que usem o OAuth.
Para implementar um centro de ações alojado pelo cliente, tem de garantir que o ficheiro JAR está alojado num servidor público para que o centro de ações do Looker possa comunicar com ele. No entanto, esta solução não é recomendada.
Além disso, as ações de OAuth e streaming podem não ser utilizáveis numa instância do Looker alojada pelo cliente se a instância usar um certificado SSL emitido por uma autoridade de certificação (AC) que não esteja nesta lista de certificados de raiz.
Criar uma ação personalizada
Esta secção descreve os passos a seguir para escrever e testar uma ação personalizada através do código fonte do Action Hub do Looker. Para ver exemplos de código funcionais, consulte as ações existentes no repositório looker-open-source/actions
no GitHub.
Pode criar uma ação personalizada:
- Configurar um repositório de desenvolvimento
- Escrever a sua ação
- Testar a ação
- Publicar e ativar a sua ação, quer no centro de ações do Looker, quer no seu próprio servidor privado do centro de ações
Tal como acontece com qualquer ação, pode ter de configurar os seus modelos LookML com parâmetros específicos antes de poder usar a ação para enviar os seus dados.
Configurar um repositório de desenvolvimento
O Action Hub do Looker é um servidor Node.js escrito em TypeScript, uma pequena camada sobre o JavaScript moderno que adiciona informações de tipo para ajudar a detetar erros de programação. Se estiver familiarizado com o JavaScript, a maioria da linguagem TypeScript deve ser-lhe familiar.
A execução do Centro de ação do Looker requer o seguinte software:
- Node.js
- Node Version Manager (NVM: para selecionar a versão adequada do Node.js)
- Yarn (para gerir dependências)
Depois de instalar o software necessário, tem tudo pronto para configurar o ambiente de desenvolvimento. O exemplo seguinte usa o Git.
Clone o repositório
looker-open-source/actions
localmente:git clone git@github.com:looker-open-source/actions.git
Crie um diretório com o nome da sua ação no diretório
actions/src/actions
. Por exemplo:mkdir actions/src/actions/my_action
Comece a preencher o diretório com os ficheiros de que precisa para executar a ação. Consulte o repositório do GitHub de ações para ver um exemplo da estrutura de ficheiros.
O Looker recomenda que também adicione o seguinte:
- Um ficheiro README para explicar a finalidade e os meios de autenticação da sua ação
- Um ícone PNG para apresentar no Action Hub do Looker (ou no Action Hub privado na sua instância do Looker) e nas janelas de entrega de dados do Looker
- Todos os ficheiros para testes que quer executar no código de ação. Isto é diferente de testar a ação
Escrever uma ação
Um requisito de design para o servidor do Action Hub do Looker é que permaneça completamente sem estado, pelo que não é permitido armazenar informações na aplicação ou no serviço de ações. Todas as informações necessárias para realizar a ação têm de ser fornecidas nas chamadas de solicitação do ficheiro de ação.
O conteúdo exato do ficheiro de ação varia consoante o serviço, o tipo ou o nível em que a ação opera e os formatos de dados ou visualização que têm de ser especificados. A ação também pode ser configurada para fluxos de autorização OAuth 2.0.
Os ficheiros de ações baseiam-se no método da API /execute
. Os pedidos da API Looker recebem um DataActionRequest
sempre que um utilizador executa a ação no Looker. O DataActionRequest
contém todos os dados e metadados necessários para executar a ação. Também está disponível um método /form
, que pode ser usado para recolher informações adicionais do utilizador antes de executar a ação. Os campos que especificar no elemento /form
vão aparecer no pop-up Enviar ou Agendar quando os utilizadores selecionarem a ação como destino para a respetiva entrega de dados.
Ao escrever o ficheiro de ações, inclua, pelo menos, os seguintes parâmetros marcados como Obrigatório na definição de ações:
Parâmetro | Obrigatória | Descrição | Tipo de dados |
---|---|---|---|
name |
Sim | Um nome exclusivo para a ação. Este deve ser exclusivo em todas as ações no Action Hub do Looker. | de string |
url |
Sim | Um URL absoluto do ponto final /execute para esta ação. |
de string |
label |
Sim | Uma etiqueta legível para a ação. | de string |
supportedActionTypes |
Sim | Uma lista de tipos de ações que a ação suporta. Os valores válidos são "cell" , "query" e "dashboard" . |
de string |
formURL |
Não | Um URL absoluto do ponto final /form para esta ação. |
de string |
description |
Não | Descrição da ação. | de string |
params |
Não | Matriz de parameters para a ação. Inclua o nome, a etiqueta e a descrição no formato de string para cada parâmetro. Estes são os campos que aparecem na página de ativação da ação no painel Administração. Para gerir a forma como os utilizadores podem enviar dados para um destino de ação, pode especificar um atributo do utilizador para o qual um utilizador tem de ter um valor definido. |
parameters |
supportedFormats |
Não | Uma lista de formatos de dados suportados pela ação. Os valores válidos são "txt" , "csv" , "inline_json" , "json" e "json_detail" |
de string |
supportedFormattings |
Não | Uma lista de opções de formatação suportadas pela ação. Os valores válidos são "formatted" e "unformatted" . |
de string |
supportedVisualizationFormattings |
Não | Uma lista de opções de formatação de visualização suportadas pela ação. Os valores válidos são "apply" e "noapply" . |
de string |
iconName |
Não | Um URI de dados que representa uma imagem de ícone para a ação. | de string |
requiredFields |
Não | Uma lista de descrições dos campos obrigatórios com os quais esta ação é compatível. Se existirem várias entradas nesta lista, a ação requer mais do que um campo. | RequiredField |
supportedDownloadSettings |
Não | Um valor booleano que determina se a ação vai receber um URL de transferência de utilização única para facilitar o streaming ilimitado de dados. O parâmetro é definido pelo parâmetro usesStreaming , que é um valor booleano true/false . Se usesStreaming = true , então supportedDownloadSettings = url . Se usesStreaming = false , então supportedDownloadSettings = push . |
Booleano |
usesOAuth |
Não | Um valor booleano que determina se a ação é uma ação OAuth. Isto determina se a ação vai receber um link de utilização única para poder definir state para um utilizador específico para esta ação. |
Booleano |
usesStreaming |
Não | Um valor booleano que determina se a ação suporta resultados de consultas transmitidos. Verifique a coluna Usa streaming de dados (Sim/Não) na lista de serviços integrados. As ações que transmitem resultados podem exigir a configuração de um servidor do hub de ações local. Consulte a página de práticas recomendadas Configurar um hub de ações local para ações que usam OAuth ou streaming para mais informações. | Booleano |
minimumSupportedVersion |
Não | A versão mínima do Looker na qual a ação é apresentada na lista do Action Hub do painel Administração. | de string |
Pode consultar exemplos das ações do Action Hub do Looker no GitHub.
Tipos de ações suportados
O Looker suporta três tipos de ações, conforme especificado no parâmetro supportedActionTypes
da sua ação: consulta, célula e painel de controlo.
- Uma ação ao nível da consulta: esta é uma ação que envia uma consulta completa. A ação de segmento, por exemplo, é uma ação ao nível da consulta.
- Uma ação ao nível da célula: uma ação ao nível da célula envia o valor de uma única célula específica numa tabela de dados. Este tipo de ação é diferente das ações de dados, que podem ser definidas para dimensões ou medidas através do parâmetro
action
. Para enviar informações de uma célula específica numa tabela, o Looker usa etiquetas para mapear ações para as células correspondentes. As ações têm de especificar as etiquetas que suportam emrequiredFields
. Para mapear ações e campos, os campos no LookML têm de especificar a que etiquetas estão mapeados com o parâmetrotags
do LookML. Por exemplo, a ação de mensagem do Twilio usa uma etiquetaphone
para que os programadores de LookML possam controlar em que campos de números de telefone a ação do Twilio vai aparecer. - Uma ação ao nível do painel de controlo: uma ação ao nível do painel de controlo suporta o envio de uma imagem de um painel de controlo. Por exemplo, a ação SendGrid envia imagens do painel de controlo por email.
Adicionar atributos do utilizador a ações personalizadas
Para ações personalizadas, pode adicionar atributos do utilizador no parâmetro params
do ficheiro de ação. Se o parâmetro for obrigatório, cada utilizador tem de ter um valor para este atributo definido na respetiva conta de utilizador ou num grupo de utilizadores ao qual pertence, além da send_to_integration
autorização, para ver a ação como uma opção de destino quando envia ou agenda conteúdo.
Para adicionar um atributo do utilizador à sua ação:
- Um administrador do Looker pode ter de criar o atributo do utilizador que corresponde ao
user_attribute_param
se ainda não existir. - Defina um valor válido para o atributo do utilizador para os utilizadores ou os grupos de utilizadores que precisam de enviar conteúdo para o destino da ação. (Estes utilizadores também têm de ter autorizações
send_to_integration
.) - O parâmetro
params
representa os campos do formulário que um administrador do Looker tem de configurar na página de ativação da ação a partir da lista Ações no painel Administração. No parâmetroparams
do ficheiro de ações, inclua o seguinte:
params = [{
description: "A description of the param.",
label: "A label for the param.",
name: "action_param_name",
user_attribute_name: "user_attribute_name",
required: true,
sensitive: true,
}]
onde user_attribute_name
é o atributo do utilizador definido no campo Nome na página Atributos do utilizador na secção Utilizadores do painel Administração. required: true
significa que um utilizador tem de ter um valor não nulo e válido definido para esse atributo do utilizador para ver a ação quando os dados estão a ser enviados, e sensitive: true
significa que o atributo do utilizador está encriptado e nunca é apresentado na IU do Looker depois de ser introduzido. Pode especificar vários subparâmetros de atributos do utilizador.
- Implemente as atualizações no servidor do centro de ações.
- Se estiver a adicionar uma nova ação, um administrador do Looker tem de ativar a ação clicando no botão Ativar junto à ação na página Ações no painel Administração.
- Se estiver a atualizar uma ação existente, atualize a lista de ações clicando no botão Atualizar. Em seguida, clique no botão Definições.
- Na página de definições/ativação da ação, um administrador do Looker tem de configurar os campos do formulário da ação para extrair informações do atributo do utilizador. Para tal, clica no ícone do atributo do utilizador
à direita do campo adequado e seleciona o atributo do utilizador pretendido.
Parâmetros requiredField
em ações ao nível da célula
Para ações ao nível da célula, pode configurar os campos LookML do seu modelo para fornecer dados a esse destino de ação especificando que etiquetas a sua ação suporta no parâmetro requiredFields
do ficheiro de ação.
Parâmetro | Obrigatória | Descrição | Tipo de dados |
---|---|---|---|
tag |
Não | Se estiver presente, corresponde a um campo que tem esta etiqueta. | de string |
any_tag |
Não | Se estiver presente, substitui tag e corresponde a um campo que tenha qualquer uma das etiquetas fornecidas. |
de string |
all_tags |
Não | Se estiver presente, substitui tag e corresponde a um campo que tem todas as etiquetas fornecidas. |
de string |
Formatos de dados suportados
A classe DataActionRequest
define o formato de envio de dados disponível para a ação funcionar. Para ações ao nível da consulta, o pedido vai conter um anexo que pode estar em vários formatos. A ação pode especificar um ou mais supportedFormats
ou permitir que o utilizador escolha o formato especificando todos os formatos possíveis. Para ações ao nível da célula, o valor da célula está presente em DataActionRequest
.
Configurar uma ação para OAuth
Pode configurar a sua ação para que os utilizadores se possam autenticar na ação com o OAuth. Apesar de o Looker Action Hub ter de permanecer sem estado, pode aplicar um estado através de um pedido de formulário da API Looker Action.
Fluxo de OAuth da ação do Looker
Para ações no Action Hub do Looker, pode estender um OAuthAction
em vez de um Hub.Action
para definir um valor booleano que indica que métodos OAuth são necessários para autenticar um utilizador numa ação. Para cada ação ativada com OAuth ou ativada com estado, o Looker armazena um estado por utilizador e por ação, para que cada combinação de ação e utilizador tenha um evento OAuth independente.
Normalmente, o fluxo de criação de ações envolve um pedido /form
seguido de um pedido /execute
. Para o OAuth, o pedido /form
deve ter um método para determinar se o utilizador está autenticado no serviço de destino. Se o utilizador já estiver autenticado, a ação deve devolver um /form
normal de acordo com o que o pedido /execute
requer. Se o utilizador não estiver autenticado, a ação devolve um link que inicializa um fluxo OAuth.
Guardar o estado com o URL OAuth
O Looker envia um pedido HTTP POST com um corpo vazio para o ActionList
ponto final. Se a ação devolver uses_oauth: true
na respetiva definição, é enviado um state_url
de utilização única em cada pedido /form
do Looker. O state_url
é um URL especial de utilização única que define o estado de um utilizador para uma determinada ação.
Se o utilizador não estiver autenticado com o ponto final, o /form
devolvido deve conter um form_field
do tipo oauth_link
que vai para o ponto final /oauth
de uma ação. O state_url
deve ser encriptado e guardado como um parâmetro state
no oauth_url
devolvido. Por exemplo:
{
"name": "login",
"type": "oauth_link",
"label": "Log in",
"description": "OAuth Link",
"oauth_url": "ACTIONHUB_URL/actions/my_action/oauth?state=encrypted_state_url"
}
Neste exemplo, o ponto final /oauth
redireciona o utilizador para o servidor de autenticação. O ponto final /oauth
cria o redirecionamento no método oauthUrl(...)
numa ação OAuth, conforme mostrado no Dropbox OauthUrl.
O parâmetro state
que contém esse state_url
encriptado deve ser transmitido para o Action Hub do Looker.
Guardar o estado com o URI de redirecionamento do centro de ações
No ponto final /oauth
, também é criado um redirect_uri
para o centro de ações e transmitido para o método oauthUrl(...)
da ação. Este redirect_uri
tem o formato /actions/src/actions/my_maction/oauth_redirect
e é o ponto final usado se a autenticação devolver um resultado.
Este ponto final chama o método oauthFetchInfo(...)
, que deve ser implementado pelo método OauthAction
para extrair as informações necessárias e tentar receber ou guardar qualquer estado ou auth
recebido do servidor de autenticação.
O state
desencripta o state_url
encriptado e usa-o para POST state
de volta para o Looker. Na próxima vez que um utilizador fizer um pedido para essa ação, o estado guardado recentemente é enviado para o Looker Action Hub.
Adicionar os ficheiros de ações ao repositório do Centro de ações do Looker
Depois de escrever o ficheiro de ação, no repositório do Centro de ação do Looker:
Adicione o ficheiro de ação (por exemplo,
my_action.ts
) aactions/src/actions/index.ts
.import "./my_action/my_action.ts"
Adicione todos os requisitos de pacotes Node.js que usou na escrita da sua ação. Por exemplo:
yarn add aws-sdk yarn add express
Instale as dependências do Node.js do servidor do Centro de ações do Looker.
yarn install
Executar todos os testes que escreveu.
yarn test
Testar uma ação
Para testes completos, pode experimentar a sua ação na instância do Looker alojando um servidor de centro de ações privado. Este servidor tem de estar na Internet pública com um certificado SSL válido e tem de poder iniciar e receber ligações ou pedidos HTTPS de e para o Looker. Para tal, pode usar uma plataforma baseada na nuvem, como o Heroku, conforme mostrado no exemplo seguinte. Em alternativa, pode usar qualquer plataforma que satisfaça os requisitos mencionados acima.
Configurar um servidor do centro de ações locais
Neste exemplo, vamos realizar a ação que desenvolvemos no repositório do looker-open-source/actions/src/actions
GitHub e confirmar o código num novo ramo do Git. Recomendamos que trabalhe em funcionalidades usando ramificações para poder acompanhar facilmente o seu código e, se quiser, criar facilmente um PR com o Looker.
Para começar, crie a ramificação e, em seguida, prepare e confirme o seu trabalho. Por exemplo:
git checkout -b my-branch-name git add file-names git commit -m commit-message
Para este exemplo, para enviar um ramo para o Heroku, configure o seu repositório Git com o Heroku como uma opção remota na linha de comandos:
heroku login heroku create git push heroku
O Heroku devolve o URL público que aloja agora o centro de ações para sua utilização. Visite o URL ou execute
heroku logs
para confirmar que o centro de ações está em execução. Se se esquecer do URL público, pode executar o seguinte na linha de comandos:heroku info -s | grep web_url
O Heroku devolve o seu URL público. Por exemplo:
https://my-heroku-action-server-1234.herokuapp.com
Na linha de comandos, defina o URL base do centro de ações:
heroku config:set ACTION_HUB_BASE_URL="https://my-heroku-action-server-1234.herokuapp.com"
Defina a etiqueta do centro de ações:
heroku config:set ACTION_HUB_LABEL="Your Action Hub"
O Looker usa um token de autorização para se ligar ao centro de ações. Gere o token na linha de comandos:
heroku run yarn generate-api-key
Se não estiver a usar o Heroku, como neste exemplo, use:
yarn generate-api-key
O Heroku devolve o seu token de autorização. Por exemplo:
Authorization: Token token="abcdefg123456789"
Defina o segredo do centro de ações através da chave secreta:
heroku config:set ACTION_HUB_SECRET="abcdefg123456789"
As implementações alojadas pelo cliente podem exigir a configuração de variáveis de ambiente adicionais não documentadas aqui.
Adicione a ação na sua instância local do Looker acedendo a Administração > Ações.
- Na parte inferior da lista de ações, clique em Adicionar centro de ações.
- Introduza o URL do centro de ações e, opcionalmente, uma chave secreta.
- Encontre a sua ação na lista Ações no menu Administração do Looker.
- Clique em Ativar.
Se a sua ação exigir que tipos específicos de dados sejam transmitidos a partir do Looker, certifique-se de que configura todos os modelos para incluir o parâmetro tags
adequado.
Agora, já pode testar a sua ação!
Testar ações ao nível do painel de controlo e da consulta
Na sua instância do Looker, configure o modelo do LookML com etiquetas, se necessário. Crie e guarde um visual. No visual guardado, clique no menu no canto superior direito e selecione Enviar com a sua ação como destino. Se tiver um formulário para entrega, o Looker renderiza-o na janela Enviado.
Clique em Enviar teste para enviar os dados. O estado da ação é apresentado no histórico do programador no painel Administração. Se a sua ação encontrar um erro, este é apresentado no painel Administração, e o Looker envia um email com a mensagem de erro ao utilizador que enviou a ação.
Testar ações ao nível da célula
Configure um campo LookML com as etiquetas adequadas para a sua ação. Na instância do Looker, execute uma consulta que inclua esse campo. Encontre o campo na tabela de dados. Clique em … na célula e selecione Enviar no menu pendente. Se receber erros, tem de fazer uma atualização completa na tabela de dados depois de resolver esses erros.
- Se a ação for entregue sem erros, está tudo pronto para publicar a ação!
- Se quiser continuar a alojar a sua ação de forma privada, pode publicá-la no seu centro de ações privado.
- Se quiser publicar a sua ação para utilização por todos os clientes do Looker, consulte a secção sobre a publicação no Action Hub do Looker.
Publicar e ativar uma ação personalizada
Existem duas opções de publicação para ações personalizadas:
- Publicação no centro de ações do Looker: isto disponibiliza a sua ação a qualquer pessoa que use o Looker.
- Publicar num servidor do centro de ações privado: isto torna a sua ação disponível apenas na sua instância do Looker.
Depois de publicar a ação, pode ativá-la na página Ações do painel Administração.
Publicação no Centro de ações do Looker
Esta abordagem é a mais fácil e funciona para qualquer ação que queira disponibilizar a qualquer pessoa que use o Looker.
Depois de testar a sua ação, pode enviar um PR para o repositório looker-open-source/actions
no GitHub.
Introduza o seguinte comando:
git push <your fork> <your development branch>
Crie o seu pedido de obtenção com o repositório
looker-open-source/actions
como destino.Preencha o formulário de envio do mercado do Looker e do centro de ação. Para mais informações acerca dos requisitos do formulário, consulte o artigo Envio de conteúdo para o Looker Marketplace.
O Looker vai rever o seu código de ação. Reservamo-nos o direito de recusar o seu PR, mas podemos ajudar com quaisquer problemas que tenha e oferecer sugestões de melhoria. Em seguida, incorporamos o código no repositório
looker-open-source/actions
e implementamo-lo noactions.looker.com
. Depois de implementado, o código fica disponível para todos os clientes do Looker.Ative a ação na sua instância do Looker para que apareça como uma opção de fornecimento de dados.
Publicação num servidor de centro de ações privado
Se tiver ações personalizadas que sejam privadas para a sua empresa ou exemplo de utilização, não deve adicionar a ação ao repositório looker-open-source/actions
. Em alternativa, crie um centro de ações privado com a mesma framework Node.js que usou para testar a sua ação.
Pode configurar o seu servidor do centro de ações interno na sua própria infraestrutura ou através de uma plataforma de aplicações baseada na nuvem (o nosso exemplo usou o Heroku). Não se esqueça de criar uma ramificação do Centro de ações do Looker para o seu servidor privado do centro de ações antes da implementação.
Configurar um modelo do LookML para utilização com uma ação
Tanto para ações personalizadas como para ações disponíveis no Action Hub do Looker, tem de identificar os campos de dados relevantes através do parâmetro tags
no seu modelo LookML. A página Ações no painel Administração fornece informações sobre as etiquetas necessárias para o serviço, se aplicável.
Por exemplo, uma integração Twilio Send Message envia uma mensagem para uma lista de números de telefone. Na página Ações do painel Administração, a integração apresenta o subtexto "A ação pode ser usada com consultas que tenham um campo etiquetado phone
".
Isto significa que o serviço Twilio Send Message requer uma consulta que inclua um campo de número de telefone e que use o parâmetro tags
para identificar que campo na consulta contém números de telefone. Identifica um campo de número de telefone no LookML especificando tags: ["phone"]
para esse campo. O seu LookML para um campo de número de telefone pode ter o seguinte aspeto:
dimension: phone {
tags: ["phone"]
type: string
sql: ${TABLE}.phone ;;
}
Uma integração que não requer etiquetas apresenta o subtexto "A ação pode ser usada com qualquer consulta" na página Ações no painel Administração.
Certifique-se de que identifica todos os campos obrigatórios no seu modelo LookML com o parâmetro tags
para que os seus utilizadores possam usar o serviço para enviar dados.
O que se segue?
Saiba como fornecer o conteúdo de uma análise detalhada ou uma exploração ou de um painel de controlo a um serviço integrado.