Además de entregar contenido a los destinos integrados de Looker, puedes usar acciones, también llamadas integraciones, para entregar contenido a servicios de terceros integrados en Looker a través de un servidor de centro de acciones.
En esta página, se explican las opciones para crear acciones personalizadas que puedes solicitar para agregar al Action Hub de Looker o hacerlo en tu propio servidor privado del Centro de acciones. En esta página, también se describe cómo iniciar un servidor del concentrador de acciones locales para probar tus acciones personalizadas o ejecutar un servidor del concentrador de acciones privado.
Para comenzar a usar las acciones, puedes hacer lo siguiente:
- Usar las acciones existentes de Looker disponibles en el Centro de acciones de Looker
- Compila y publica una acción personalizada en Looker Action Hub para uso público.
- Compila y publica una acción personalizada en un servidor del concentrador de acciones privadas para uso privado.
Una vez que se agrega la acción al Centro de acciones, un administrador de Looker puede habilitarla para entregarle contenido de Looker a esos servicios.
También puedes configurar varios centros de acciones si quieres usar las integraciones de Looker a través del Action Hub de Looker y, además, alojar tus propias acciones privadas o personalizadas. Las acciones de cada centro de acciones aparecerán en la página Acciones del panel Administrador.
Action Hub de Looker
Looker aloja y proporciona Looker Action Hub, un servidor sin estado que implementa la API de Looker de Action y expone acciones populares. Todos los datos que envíen tus usuarios con una acción se procesarán de forma temporal en el servidor de Action Hub de Looker en lugar de en tu instancia de Looker.
Looker ya está integrado en varios servicios. Consulta la página de documentación Configuración del administrador: Acciones para obtener información sobre cómo habilitar estos servicios existentes.
Requisitos del Centro de acciones de Looker
El Action Hub de Looker debe poder enviar y recibir solicitudes a la API de las siguientes maneras:
- De la instancia de Looker a la red de Looker Action Hub
- Del navegador del usuario de Looker a la red del Action Hub de Looker
- De la red del Action Hub de Looker a la instancia de Looker
Si tu implementación de Looker no puede admitir estas solicitudes o si la función Lista de IP permitidas está habilitada en tu instancia de Looker, considera configurar un servidor del concentrador de acciones locales para entregar integraciones de Looker o acciones personalizadas. Los administradores de instancias alojadas por el cliente también pueden implementar un servidor de acción local específicamente para OAuth y acciones de transmisión.
Solicitudes de la instancia de Looker a la red del Centro de acciones de Looker
Las solicitudes a actions.looker.com
se resuelven en una dirección IP dinámica. Las solicitudes salientes de la instancia de Looker deben poder llegar a los siguientes extremos:
actions.looker.com/
actions.looker.com/actions/<name>/execute
actions.looker.com/actions/<name>/form
donde name
es el nombre programático de la acción.
Solicitudes del navegador del usuario de Looker a la red del Centro de acciones de Looker
El navegador del usuario de Looker debe poder enviar solicitudes a los siguientes extremos del Action Hub de Looker (para OAuth):
actions.looker.com/actions/<name>/oauth
donde name
es el nombre programático de la acción.
Solicitudes de la red de Action Hub de Looker a la instancia de Looker
El Action Hub de Looker debe realizar solicitudes a la instancia de Looker para acciones que admiten resultados transmitidos o que usen OAuth.
Una acción de transmisión permite que la acción consuma consultas que entregan Todos los resultados. Las acciones habilitadas para OAuth usan la autenticación por usuario a través de flujos de OAuth 2.0. Las acciones de OAuth deben almacenar las credenciales del usuario en su instancia de Looker de origen porque el Centro de acciones de Looker es multiusuario y no almacena credenciales específicas del usuario de ningún tipo.
Las solicitudes del Action Hub de Looker para una instancia de Looker tienen la siguiente forma:
GET <host_looker_url>/downloads/<random_40_char_token>
POST <host_looker_url>/action_hub_state/<random_40_char_token>
Estas URLs se generan en el momento en la instancia de Looker antes de enviarlas al Action Hub de Looker. Por este motivo, el Action Hub de Looker debe poder resolver el <host_looker_url>
en una dirección IP y hacer solicitudes a la red en la que reside tu instancia de Looker.
El Action Hub de Looker tiene direcciones IP de salida estáticas de las que siempre provendrán las solicitudes: 35.153.89.114
, 104.196.138.163
y 35.169.42.87
. Los administradores de las instancias alojadas en Looker que habilitaron la lista de IP permitidas deben agregar estas direcciones IP para usar cualquier acción que admita resultados transmitidos o use OAuth.
Consideraciones para instancias alojadas por el cliente
Para usar las integraciones de Looker, el Action Hub de Looker debe poder comunicarse con la instancia de Looker y cumplir con los requisitos de Looker Action Hub. Esto no siempre es posible con las instancias de Looker alojadas por el cliente por varios motivos. Si no es posible la comunicación bidireccional entre el Action Hub de Looker y la instancia de Looker, este puede mostrar un comportamiento inesperado o no deseado, como las consultas en espera o las acciones no disponibles.
Para abordar el posible problema de que el Action Hub de Looker no pueda comunicarse con la instancia de Looker, los administradores de Looker pueden implementar una de las soluciones que se muestran más adelante en esta página. La solución o la combinación de soluciones adecuada dependerá de la arquitectura de la instancia de Looker:
Si el Centro de acciones de Looker no puede resolver la instancia alojada por el cliente (es decir, el Centro de acciones de Looker no puede recibir solicitudes de la instancia de Looker), los administradores de Looker pueden comunicarse con un especialista en ventas de Google Cloud para habilitar la función de licencia
public_host_url
. Esa función de licencia revela la opción de inicio--public-host-url
, que permite a los administradores especificar un nombre de host<public_host_url>
que se puede resolver y que es diferente de la instancia<host_looker_url>
.public_host_url
anula el nombre de host para algunas URLs de devolución de llamada específicas de Looker Action Hub y las enruta a través de un proxy inverso que tienepublic_host_url
como un nombre que se puede resolver de forma pública. Este proxy inverso solo acepta solicitudes de direcciones IP de salida estáticas para el Action Hub de Looker. Los administradores de Looker que usen este método deben agregar a la lista de entidades permitidas las direcciones IP de salida desde las que el Action Hub de Looker realiza solicitudes a la instancia de Looker:35.153.89.114
,104.196.138.163
y35.169.42.87
.Si la instancia de Looker puede resolver la URL de la instancia alojada por el cliente, pero el Action Hub de Looker no puede enviar solicitudes a la instancia de Looker, es posible que los usuarios no puedan configurar o usar acciones que admitan los resultados transmitidos o que usen OAuth. Para resolver esto, los administradores de Looker deben agregar a la lista de entidades permitidas las direcciones IP de salida desde las que el Action Hub de Looker realiza solicitudes a la instancia de Looker:
35.153.89.114
,104.196.138.163
y35.169.42.87
.Si ninguna de las soluciones mencionadas anteriormente es adecuada para la arquitectura de instancias de Looker, los administradores de Looker pueden implementar un centro de acciones alojado por el cliente para todas las acciones o solo para aquellas que admiten resultados transmitidos o usan OAuth.
Para implementar un centro de acciones alojado por el cliente, debes asegurarte de que el archivo JAR esté alojado en un servidor público para que el Action Hub de Looker pueda comunicarse con él. Sin embargo, no se recomienda esta solución.
Además, es posible que no se puedan usar las acciones de transmisión y de OAuth en una instancia de Looker alojada por el cliente si esta usa un certificado SSL emitido por una autoridad certificadora (AC) que no se encuentra en esta lista de certificados raíz.
Cómo crear una acción personalizada
En esta sección, se describen los pasos que se deben seguir para escribir y probar una acción personalizada con el código fuente de Looker Action Hub. Para ver ejemplos de código funcional, consulta las acciones existentes en el repositorio looker-open-source/actions
en GitHub.
Puedes crear una acción personalizada de las siguientes maneras:
- Configura un repositorio de desarrollo
- Cómo escribir una acción
- Prueba tu acción
- Publicar y habilitar tu acción, ya sea en el Action Hub de Looker o en tu propio servidor del concentrador de acciones privado
Al igual que con cualquier acción, es posible que debas configurar tus modelos de LookML con parámetros específicos antes de poder usar la acción para entregar tus datos.
Configura un repositorio de desarrollo
El Action Hub de Looker es un servidor de Node.js escrito en TypeScript, una pequeña capa sobre el JavaScript moderno que agrega información sobre tipos para ayudar a detectar errores de programación. Si conoces JavaScript, deberías conocer la mayor parte del lenguaje de TypeScript.
Para ejecutar el Action Hub de Looker, se requiere el siguiente software:
- Node.js
- Node Version Manager (NVM, para seleccionar la versión de Node.js adecuada)
- Yarn (para administrar dependencias)
Una vez que instales el software requerido, podrás configurar tu entorno de desarrollo. En el siguiente ejemplo, se usa Git.
Clona el repositorio
looker-open-source/actions
de forma local:git clone git@github.com:looker-open-source/actions.git
Crea un directorio con el nombre de tu acción en el directorio
actions/src/actions
. Por ejemplo:mkdir actions/src/actions/my_action
Comienza a completar tu directorio con los archivos que necesitarás para ejecutar tu acción. Consulta el repositorio de GitHub de acciones para ver una estructura de archivos de ejemplo.
Looker te recomienda que también agregues lo siguiente:
- Un archivo README para explicar el propósito y los medios de autenticación de tu acción
- Un ícono PNG para mostrar en el Action Hub de Looker (o el centro de acciones privado en tu instancia de Looker) y en las ventanas de entrega de datos de Looker
- Cualquier archivo para pruebas que desees ejecutar en el código de acción (esto es diferente de probar tu acción)
Cómo escribir una acción
Un requisito de diseño para el servidor de Action Hub de Looker es que permanezca completamente sin estado, por lo que no se permite almacenar información en la aplicación o el servicio de acción. Toda la información necesaria para completar la acción debe proporcionarse en las llamadas de solicitud del archivo de acción.
El contenido exacto del archivo de acción variará en función del servicio, el tipo o nivel en el que opera la acción y los formatos de datos o visualización que deban especificarse. La acción también se puede configurar para los flujos de autorización de OAuth 2.0.
Los archivos de acción se basan en el método /execute
de la API. Las solicitudes a la API de Looker reciben una DataActionRequest
cada vez que un usuario ejecuta la acción en Looker. DataActionRequest
contiene todos los datos y metadatos necesarios para ejecutar tu acción. También hay un método /form
disponible, que se puede usar para recopilar información adicional del usuario antes de que ejecute la acción. Los campos que especifiques en /form
aparecerán en la ventana emergente Enviar o Programar cuando los usuarios seleccionen la acción como destino para su entrega de datos.
Cuando escribas el archivo de acciones, incluye al menos los siguientes parámetros marcados como Obligatorio en la definición de la acción:
Parámetro | Obligatorio | Descripción | Tipo de datos |
---|---|---|---|
name |
Sí | Un nombre único para la acción. Debe ser único para todas las acciones del Action Hub de Looker. | string |
url |
Sí | Es una URL absoluta del extremo /execute para esta acción. |
string |
label |
Sí | Es la etiqueta de la acción legible por humanos. | string |
supportedActionTypes |
Sí | Una lista de los tipos de acciones que admite la acción. Los valores válidos son "cell" , "query" y "dashboard" . |
string |
formURL |
No | Es una URL absoluta del extremo /form para esta acción. |
string |
description |
No | Descripción de la acción. | string |
params |
No | Array de parameters para la acción. Incluye el nombre, la etiqueta y la descripción en formato de cadena para cada parámetro. Estos son los campos que aparecen en la página de habilitación de la acción en el panel Administrador. Si quieres administrar la forma en que los usuarios pueden entregar datos a un destino de acción, puedes especificar un atributo de usuario para el que un usuario debe tener un valor definido. |
parameters |
supportedFormats |
No | Una lista de los formatos de datos que admite la acción. Los valores válidos son "txt" , "csv" , "inline_json" , "json" y "json_detail" . |
string |
supportedFormattings |
No | Una lista de opciones de formato que admite la acción. Los valores válidos son "formatted" y "unformatted" . |
string |
supportedVisualizationFormattings |
No | Es una lista de opciones de formato de visualización que admite la acción. Los valores válidos son "apply" y "noapply" . |
string |
iconName |
No | Un URI de datos que representa una imagen de ícono para la acción. | string |
requiredFields |
No | Una lista de descripciones de los campos obligatorios con los que esta acción es compatible. Si hay varias entradas en esta lista, la acción requiere más de un campo. | RequiredField |
supportedDownloadSettings |
No | Booleano que determina si la acción recibirá una URL de descarga de un solo uso para facilitar la transmisión ilimitada de datos. El parámetro se establece con el parámetro usesStreaming , que es un valor booleano true/false . Si es usesStreaming = true , entonces supportedDownloadSettings = url . Si es usesStreaming = false , entonces supportedDownloadSettings = push . |
Booleano |
usesOAuth |
No | Un valor booleano que determina si la acción es de OAuth. Esto determinará si la acción recibirá un vínculo de un solo uso para poder configurar state para un usuario específico para esta acción. |
Booleano |
usesStreaming |
No | Un valor booleano que determina si la acción admite resultados de consultas transmitidos. Consulta la columna Utiliza transmisión de datos (Sí/No) en la lista de servicios integrados. Es posible que las acciones que transmiten resultados requieran la configuración de un servidor del concentrador de acciones locales. Para obtener más información, consulta la página de prácticas recomendadas Cómo configurar un centro de acciones locales para acciones que usan OAuth o la transmisión. | Booleano |
minimumSupportedVersion |
No | La versión mínima de Looker en la que aparecerá la acción en la lista del Centro de acciones del panel de administración. | string |
Los ejemplos de las acciones del Action Hub de Looker están en GitHub como referencia.
Tipos de acciones compatibles
Looker admite tres tipos de acciones, como se especifica en el parámetro supportedActionTypes
de tu acción: consulta, celda y panel.
- Una acción a nivel de la consulta: Es una acción que envía una consulta completa. La acción Segment, por ejemplo, es una acción a nivel de la consulta.
- Una acción a nivel de celda: Una acción a nivel de celda envía el valor de una sola celda específica de una tabla de datos. Este tipo de acción es diferente de las acciones de datos, que pueden definirse para dimensiones o mediciones con el parámetro
action
. Si quieres enviar información desde una celda específica de una tabla, Looker usa etiquetas para asignar acciones a las celdas correspondientes. Las acciones deben especificar qué etiquetas admiten enrequiredFields
. Para asignar acciones y campos, los campos de LookML deben especificar a qué etiquetas se asignan con el parámetrotags
de LookML. Por ejemplo, la acción de mensaje de Twilio usa una etiquetaphone
para que los desarrolladores de LookML puedan controlar en qué campos de número de teléfono aparecerá la acción de Twilio. - Una acción a nivel del panel: Una acción a nivel del panel admite el envío de una imagen de un panel. Por ejemplo, la acción SendGrid envía imágenes del panel por correo electrónico.
Agrega atributos de usuario a acciones personalizadas
Para las acciones personalizadas, puedes agregar atributos de usuario en el parámetro params
de tu archivo de acción. Si el parámetro es obligatorio, cada usuario debe tener un valor para este atributo definido en su cuenta de usuario o para un grupo de usuarios al que pertenezca, además del permiso send_to_integration
, para ver la acción como opción de destino cuando envía o programa contenido.
Para agregar un atributo de usuario a tu acción, sigue estos pasos:
- Es posible que un administrador de Looker deba crear el atributo de usuario que corresponde a
user_attribute_param
si aún no existe. - Define un valor válido para el atributo de usuario destinado a los usuarios o grupos de usuarios que necesiten publicar contenido en el destino de tu acción. (Estos usuarios también deben tener los permisos
send_to_integration
). - El parámetro
params
representa los campos del formulario que un administrador de Looker debe configurar en la página de habilitación de la acción desde la lista Acciones del panel Administrador. En el parámetroparams
de tu archivo de acción, incluye lo siguiente:
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,
}]
donde user_attribute_name
es el atributo de usuario definido en el campo Name de la página User Attributes de la sección Users del panel Admin, required: true
significa que un usuario debe tener un valor no nulo y válido definido para ese atributo de usuario para ver la acción cuando se entregan los datos, y sensitive: true
significa que el atributo del usuario está encriptado y nunca se muestra en la IU de Looker una vez que se ingresan. Puedes especificar varios subparámetros de atributos de usuario.
- Implementa tus actualizaciones en el servidor del concentrador de acciones.
- Si agregas una acción nueva, un administrador de Looker deberá habilitarla haciendo clic en el botón Habilitar junto a la acción en la página Acciones del panel Administrador.
- Si estás actualizando una acción existente, haz clic en el botón Actualizar para actualizar la lista de acciones. Luego, haz clic en el botón Configuración.
- En la página de habilitación o configuración de acciones, un administrador de Looker debe configurar los campos del formulario de la acción para extraer información del atributo del usuario. Para ello, debe hacer clic en el ícono de atributo de usuario
a la derecha del campo correspondiente y seleccionar el atributo de usuario deseado.
Parámetros requiredField
en acciones a nivel de la celda
En el caso de las acciones a nivel de celda, puedes configurar los campos de LookML de tu modelo para entregar datos a ese destino de acción especificando las etiquetas que admite tu acción en el parámetro requiredFields
del archivo de acción.
Parámetro | Obligatorio | Descripción | Tipo de datos |
---|---|---|---|
tag |
No | Si está presente, coincide con un campo que tenga esta etiqueta. | string |
any_tag |
No | Si está presente, reemplaza a tag y coincide con un campo que tenga alguna de las etiquetas proporcionadas. |
string |
all_tags |
No | Si está presente, reemplaza a tag y coincide con un campo que tiene todas las etiquetas proporcionadas. |
string |
Formatos de datos compatibles
La clase DataActionRequest
define con qué formato de entrega de datos está disponible la acción. Para las acciones a nivel de la consulta, la solicitud contendrá un archivo adjunto que puede estar en varios formatos. La acción puede especificar uno o más supportedFormats
, o permitir que el usuario elija el formato especificando todos los formatos posibles. Para las acciones a nivel de la celda, el valor de la celda estará presente en DataActionRequest
.
Configura una acción para OAuth
Puedes configurar tu acción para que los usuarios puedan autenticarse en la acción con OAuth. Aunque el Action Hub de Looker debe permanecer sin estado, puedes aplicar de manera forzosa un estado a través de una solicitud de formulario desde la API de Looker Action.
Flujo de OAuth para la acción de Looker
Para las acciones en el Action Hub de Looker, puedes extender un OAuthAction
en lugar de un Hub.Action
para establecer un valor booleano que indique qué métodos de OAuth se necesitan para autenticar a un usuario en una acción. Para cada acción habilitada para OAuth o por estado, Looker almacena un estado por usuario y por acción, de modo que cada combinación de acción y usuario tenga un evento de OAuth independiente.
El flujo para crear acciones suele implicar una solicitud /form
seguida de una solicitud /execute
. Para OAuth, la solicitud /form
debe tener un método para determinar si el usuario se autenticó dentro del servicio de destino. Si ya se autenticó al usuario, la acción debería mostrar un /form
normal de acuerdo con lo que requiera la solicitud /execute
. Si el usuario no está autenticado, la acción muestra un vínculo que inicializará un flujo de OAuth.
Guarda el estado con la URL de OAuth
Looker enviará una solicitud HTTP POST con un cuerpo vacío al extremo ActionList
. Si la acción muestra uses_oauth: true
en su definición, se enviará un state_url
de uso único en cada solicitud /form
de Looker. state_url
es una URL especial de un solo uso que establece el estado de un usuario para una acción determinada.
Si el usuario no se autentica con el extremo, el /form
que se muestra debe contener un form_field
de tipo oauth_link
que vaya al extremo /oauth
de una acción. El state_url
debe encriptarse y guardarse como un parámetro state
en el oauth_url
que se muestra. Por ejemplo:
{
"name": "login",
"type": "oauth_link",
"label": "Log in",
"description": "OAuth Link",
"oauth_url": "ACTIONHUB_URL/actions/my_action/oauth?state=encrypted_state_url"
}
En este ejemplo, el extremo /oauth
redirecciona al usuario al servidor de autenticación. El extremo /oauth
construye el redireccionamiento en el método oauthUrl(...)
en una acción de OAuth, como se muestra en Dropbox OauthUrl.
El parámetro state
que contiene ese state_url
encriptado debe pasarse al Action Hub de Looker.
Cómo guardar el estado con el URI de redireccionamiento del concentrador de acciones
En el extremo /oauth
, también se crea un redirect_uri
para el centro de acciones y se pasa al método oauthUrl(...)
de la acción. Este redirect_uri
tiene el formato /actions/src/actions/my_maction/oauth_redirect
y es el extremo que se usa si la autenticación muestra un resultado.
Este extremo llamará al método oauthFetchInfo(...)
, que debe implementarse a través del método OauthAction
para extraer la información necesaria y tratar de recibir o guardar cualquier estado o auth
recibido del servidor de autenticación.
El state
desencripta el state_url
encriptado y lo usa para enviar state
a Looker. La próxima vez que un usuario solicite esa acción, el estado recién guardado se enviará al Action Hub de Looker.
Agrega tus archivos de acción al repositorio de Action Hub de Looker
Una vez que tu archivo de acción esté escrito, en el repositorio de Action Hub de Looker, haz lo siguiente:
Agrega el archivo de acción (por ejemplo,
my_action.ts
) aactions/src/actions/index.ts
.import "./my_action/my_action.ts"
Agrega cualquier requisito de paquete de Node.js que hayas utilizado al escribir tu acción. Por ejemplo:
yarn add aws-sdk yarn add express
Instala las dependencias de Node.js del servidor de Action Hub de Looker.
yarn install
Ejecuta las pruebas que escribiste.
yarn test
Prueba una acción
Para completar las pruebas, puedes probar tu acción en tu instancia de Looker alojan un servidor de concentrador de acciones privado. Este servidor debe estar en la Internet pública con un certificado SSL válido y debe poder iniciar y recibir conexiones o solicitudes HTTPS desde y hacia Looker. Para ello, puedes usar una plataforma basada en la nube como Heroku, como se muestra en el siguiente ejemplo. Como alternativa, puedes usar cualquier plataforma que cumpla con los requisitos antes mencionados.
Cómo configurar un servidor del concentrador de acciones locales
En este ejemplo, realizaremos la acción que desarrollamos en el repositorio looker-open-source/actions/src/actions
de GitHub y confirmaremos el código en una nueva rama de Git. Te recomendamos que trabajes en funciones con ramas para que puedas hacer un seguimiento de tu código y, si lo deseas, crear fácilmente una solicitud de relaciones públicas con Looker.
Para comenzar, crea tu rama y, luego, habilita por etapas y confirma tu trabajo. Por ejemplo:
git checkout -b my-branch-name git add file-names git commit -m commit-message
En este ejemplo, para enviar una rama a Heroku, configura tu repositorio de Git con Heroku como una opción remota en la línea de comandos:
heroku login heroku create git push heroku
Heroku mostrará la URL pública que ahora aloja el centro de acciones para que la uses. Visita la URL o ejecuta
heroku logs
para confirmar que el centro de acciones se esté ejecutando. Si olvidas la URL pública, puedes ejecutar lo siguiente en la línea de comandos:heroku info -s | grep web_url
Heroku mostrará tu URL pública. Por ejemplo:
https://my-heroku-action-server-1234.herokuapp.com
En la línea de comandos, establece la URL base del centro de acciones:
heroku config:set ACTION_HUB_BASE_URL="https://my-heroku-action-server-1234.herokuapp.com"
Establece tu etiqueta del centro de acciones:
heroku config:set ACTION_HUB_LABEL="Your Action Hub"
Looker usa un token de autorización para conectarse al centro de acciones. Genera el token en tu línea de comandos:
heroku run yarn generate-api-key
Si no usas Heroku, como estamos en este ejemplo, usa lo siguiente:
yarn generate-api-key
Heroku te devolverá el token de autorización. Por ejemplo:
Authorization: Token token="abcdefg123456789"
Establece tu secreto del Centro de acciones con la clave secreta:
heroku config:set ACTION_HUB_SECRET="abcdefg123456789"
Las implementaciones alojadas por el cliente pueden requerir la configuración de variables de entorno adicionales que no se documentan aquí.
Agrega la acción en tu instancia local de Looker en Administrador > Actions.
- En la parte inferior de la lista de acciones, haz clic en Agregar centro de acciones.
- Ingresa la URL del Centro de acciones y, de forma opcional, una Clave secreta.
- Busca tu acción en la lista Acciones del menú Administrador de Looker.
- Haz clic en Habilitar.
Si tu acción requiere que se pasen tipos específicos de datos desde Looker, asegúrate de configurar los modelos para incluir el parámetro tags
adecuado.
Ya puedes probar la acción.
Prueba acciones a nivel del panel y de la búsqueda
En tu instancia de Looker, configura tu modelo de LookML con etiquetas, si es necesario. Crea y guarda una vista. En la vista guardada, haz clic en el menú de la parte superior derecha y selecciona Enviar con tu acción como destino. Si tienes un formulario de entrega, Looker lo renderizará en la ventana Enviados.
Haz clic en Enviar prueba para entregar los datos. El estado de la acción aparecerá en el Historial del programador en el panel Administrador. Si tu acción encuentra un error, se mostrará en el panel Administrador, y Looker enviará un correo electrónico con el mensaje de error al usuario que envió la acción.
Cómo probar acciones a nivel de la celda
Configura un campo de LookML con las etiquetas adecuadas para tu acción. En tu instancia de Looker, ejecuta una consulta que incluya ese campo. Busca el campo en la tabla de datos. Haz clic en ... en la celda y selecciona Enviar en el menú desplegable. Si recibes errores, deberás realizar una actualización completa en la tabla de datos después de solucionarlos.
- Si la acción se publica sin ningún error, ya puedes publicarla.
- Si quieres seguir alojando tu acción de forma privada, puedes publicarla en tu centro de acciones privado.
- Si quieres publicar tu acción para que la usen todos los clientes de Looker, consulta la sección sobre cómo publicar en el Centro de acciones de Looker.
Cómo publicar y habilitar una acción personalizada
Hay dos opciones de publicación para las acciones personalizadas:
- Publicar en el Centro de acciones de Looker: Esta opción permite que tu acción esté disponible para cualquier persona que use Looker.
- Publicar en un servidor del concentrador de acciones privado: Esto hace que tu acción esté disponible solo en tu instancia de Looker.
Una vez que se publique tu acción, puedes habilitarla en la página Acciones del panel Administrador.
Cómo publicar en el Action Hub de Looker
Este enfoque es el más fácil y funciona para cualquier acción que quieras que esté disponible para cualquier persona que use Looker.
Después de que se haya probado tu acción, puedes enviar una solicitud de extracción al repositorio looker-open-source/actions
en GitHub.
Ingresa el siguiente comando:
git push <your fork> <your development branch>
Crea tu solicitud de extracción con el repositorio
looker-open-source/actions
como tu destino.Completa el Looker Marketplace y Formulario de envío del Centro de acciones. Para obtener más información sobre los requisitos del formulario, consulta Cómo enviar contenido a Looker Marketplace.
Looker revisará tu código de acción. Nos reservamos el derecho de rechazar tu solicitud de relaciones públicas, pero podemos ayudarte con cualquier problema que tengas y ofrecerte sugerencias para mejorar. Luego, combinamos el código en el repositorio
looker-open-source/actions
y lo implementamos enactions.looker.com
. Una vez que se implemente el código, estará disponible para todos los clientes de Looker.Habilita la acción en tu instancia de Looker para que aparezca como opción de entrega de datos.
Cómo publicar en un servidor del concentrador de acciones privado
Si tienes acciones personalizadas que son privadas para tu empresa o caso de uso, no debes agregar tu acción al repositorio looker-open-source/actions
. En su lugar, crea un centro de acciones privado con el mismo framework de Node.js que usaste para probar tu acción.
Puedes configurar tu servidor del Centro de acciones interno en tu propia infraestructura o con una plataforma de aplicaciones basada en la nube (nuestro ejemplo usamos Heroku). No olvides bifurcar el Action Hub de Looker en tu servidor del concentrador de acciones privado antes de la implementación.
Configura un modelo de LookML para usarlo con una acción
Para las acciones personalizadas y las que están disponibles en el Action Hub de Looker, debes identificar los campos de datos relevantes con el parámetro tags
en tu modelo de LookML. La página Acciones del panel de Administrador proporcionará información sobre las etiquetas que son necesarias para el servicio, si las hay.
Por ejemplo, una integración de Enviar mensaje de Twilio envía un mensaje a una lista de números de teléfono. En la página Acciones del panel Administrador, la integración muestra el subtexto "La acción se puede usar con consultas que tengan un campo etiquetado como phone
".
Esto significa que el servicio de envío de mensajes de Twilio requiere una consulta que incluya un campo de número de teléfono y que use el parámetro tags
para identificar qué campo de la consulta contiene números de teléfono. Para identificar un campo de número de teléfono en LookML, especifica tags: ["phone"]
para ese campo. Tu LookML para el campo de número de teléfono podría verse de la siguiente manera:
dimension: phone {
tags: ["phone"]
type: string
sql: ${TABLE}.phone ;;
}
Una integración que no requiera etiquetas mostrará el subtexto "Action can be used with any query" (La acción se puede usar con cualquier consulta). En la página Acciones del panel de Administrador
Asegúrate de identificar los campos obligatorios en tu modelo de LookML con el parámetro tags
para que tus usuarios puedan usar el servicio y enviar datos.
¿Qué sigue?
Aprende a publicar el contenido de una vista o exploración o de un panel a un servicio integrado.