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 que se integran con Looker a través de un servidor de Action Hub.
En esta página, se explican las opciones para compilar acciones personalizadas que puedes solicitar para agregar al Action Hub de Looker o agregar a tu propio servidor privado de Action Hub. En esta página, también se describe cómo iniciar un servidor de Action Hub local para probar tus acciones personalizadas o ejecutar un servidor de Action Hub privado.
Para comenzar a usar las acciones, puedes hacer lo siguiente:
- Usa las acciones existentes de Looker disponibles en el Centro de acciones de Looker.
- Compila y publica una acción personalizada en el Centro de acciones de Looker para uso público.
- Compila y publica una acción personalizada en un servidor de centro de acciones privado para uso privado.
Una vez que se agrega la acción al centro de acciones, un administrador de Looker puede habilitarla para usarla en la entrega de contenido de Looker a esos servicios.
También puedes configurar varios centros de acciones si deseas usar las integraciones de Looker a través del Centro de acciones de Looker y alojar tus propias acciones privadas o personalizadas. Las acciones de cada centro de acción aparecerán en la página Acciones del panel Administrador.
El Action Hub de Looker
Looker aloja y proporciona el Action Hub de Looker, un servidor sin estado que implementa la API de Actions de Looker y expone acciones populares. Todos los datos que envíen tus usuarios a través de una acción se procesarán de forma temporal en el servidor del Centro de acciones 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 Action Hub de Looker
El Action Hub de Looker debe poder enviar y recibir solicitudes a la API de las siguientes maneras:
- Desde la instancia de Looker a la red de Action Hub de Looker
- Desde el navegador del usuario de Looker hasta la red de Action Hub de Looker
- Desde la red de Action Hub de Looker hasta la instancia de Looker
Si tu implementación de Looker no puede satisfacer estas solicitudes o si la función Lista de IPs permitidas está habilitada en tu instancia de Looker, considera configurar un servidor de centro de acciones local para entregar integraciones de Looker privadas o acciones personalizadas. Los administradores de instancias alojadas por el cliente también pueden implementar un servidor de acciones local específicamente para las acciones de OAuth y de transmisión.
Solicitudes de la instancia de Looker a la red de Action Hub 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 de Action Hub de Looker
El navegador del usuario de Looker debe poder realizar solicitudes a los siguientes extremos de 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 las acciones que admiten resultados transmitidos o que usan OAuth.
Una acción de transmisión permite que la acción consuma búsquedas 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, ya que Action Hub de Looker no tiene estado y es de múltiples arrendatarios, y no almacenará credenciales específicas del usuario de ningún tipo.
Las solicitudes del Action Hub de Looker a una instancia de Looker tienen los siguientes formatos:
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 enviarse al Centro de acciones de Looker. Por este motivo, el Action Hub de Looker debe poder resolver el <host_looker_url>
en una dirección IP y realizar solicitudes en la red en la que reside tu instancia de Looker.
Looker Action Hub tiene direcciones IP de salida estáticas desde las que siempre provendrán las solicitudes: 35.153.89.114
, 104.196.138.163
y 35.169.42.87
. Los administradores de instancias alojadas en Looker que habilitaron la lista de entidades permitidas de IP deben agregar estas direcciones IP para usar cualquier acción que admita resultados transmitidos o que use OAuth.
Consideraciones para las instancias alojadas por el cliente
Para usar las integraciones de Looker, el Centro de acciones de Looker debe poder comunicarse con la instancia de Looker y cumplir con los requisitos del Centro de acciones de Looker. 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, es posible que el Action Hub de Looker muestre un comportamiento inesperado o no deseado, como consultas que se detienen o 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 adecuadas dependerán de la arquitectura de la instancia de Looker:
Si la instancia alojada por el cliente no se puede resolver con el Action Hub de Looker, es decir, si el Action Hub 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 de
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 pueda resolver y que sea diferente del<host_looker_url>
de la instancia. Elpublic_host_url
anula el nombre de host para algunas URLs de devolución de llamada específicas de Looker Action Hub y enruta esas URLs de devolución de llamada a través de un proxy inverso que tiene elpublic_host_url
como un nombre que se puede resolver de forma pública. Este proxy inverso solo acepta solicitudes de las direcciones IP de salida estáticas del Action Hub de Looker. Los administradores de Looker que usan 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 Looker Action Hub no puede enviar solicitudes a la instancia de Looker, es posible que los usuarios no puedan configurar ni usar acciones que admitan resultados transmitidos o que usen OAuth. Para solucionar este problema, los administradores de Looker deben agregar a la lista de entidades permitidas las direcciones IP de salida desde las que Looker Action Hub 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 la instancia de Looker, los administradores de Looker pueden implementar un centro de acciones alojado por el cliente para todas las acciones o solo para las acciones que admiten resultados transmitidos o que 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 Centro de acciones de Looker pueda comunicarse con él. Sin embargo, no se recomienda esta solución.
Además, es posible que las acciones de OAuth y transmisión no se puedan usar en una instancia de Looker alojada por el cliente si la instancia usa un certificado SSL emitido por una autoridad certificadora (AC) que no se encuentra en esta lista de certificados raíz.
Cómo compilar una acción personalizada
En esta sección, se describen los pasos que debes seguir para escribir y probar una acción personalizada con el código fuente de Looker Action Hub. Para ver ejemplos de código funcionales, consulta las acciones existentes en el repositorio de looker-open-source/actions
en GitHub.
Para crear una acción personalizada, sigue estos pasos:
- Cómo configurar un repositorio de desarrollo
- Cómo escribir tu acción
- Prueba tu acción
- Publicar y habilitar tu acción, ya sea en Looker Action Hub o en tu propio servidor privado de Action Hub
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.
Cómo configurar un repo de desarrollo
El Action Hub de Looker es un servidor de Node.js escrito en TypeScript, una pequeña capa sobre JavaScript moderno que agrega información de tipos para ayudar a detectar errores de programación. Si conoces JavaScript, la mayor parte del lenguaje de TypeScript te resultará familiar.
Para ejecutar Action Hub de Looker, se requiere el siguiente software:
- Node.js
- Node Version Manager (NVM, para seleccionar la versión correcta de Node.js)
- Yarn (para administrar dependencias)
Una vez que hayas instalado 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 repo de GitHub de acciones para ver un ejemplo de estructura de archivos.
Looker 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
- Ícono en PNG para mostrar en el Action Hub de Looker (o en el Action Hub privado de tu instancia de Looker) y en las ventanas de entrega de datos de Looker
- Cualquier archivo de pruebas que desees ejecutar en el código de tu acción (esto es diferente de probar tu acción)
Cómo escribir una acción
Un requisito de diseño del 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á según el servicio, el tipo o el nivel en el que opera la acción, y los formatos de datos o visualización que se deban especificar. La acción también se puede configurar para flujos de autorización de OAuth 2.0.
Los archivos de acción se basan en el método de la API de /execute
. Las solicitudes a la API de Looker reciben un DataActionRequest
cada vez que un usuario ejecuta la acción en Looker. El objeto DataActionRequest
contiene todos los datos y metadatos necesarios para ejecutar tu acción. También está disponible un método /form
, 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 la entrega de sus datos.
Cuando escribas tu archivo de acción, incluye al menos los siguientes parámetros marcados como Obligatorios en la definición de la acción:
Parámetro | Obligatorio | Descripción | Tipo de datos |
---|---|---|---|
name |
Sí | Es un nombre único para la acción. Debe ser único en todas las acciones del Action Hub de Looker. | cadena |
url |
Sí | Es la URL absoluta del extremo /execute para esta acción. |
cadena |
label |
Sí | Es una etiqueta legible para la acción. | cadena |
supportedActionTypes |
Sí | Es una lista de los tipos de acciones que admite la acción. Los valores válidos son "cell" , "query" y "dashboard" . |
cadena |
formURL |
No | Es la URL absoluta del extremo /form para esta acción. |
cadena |
description |
No | Es la descripción de la acción. | cadena |
params |
No | Es un 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. Para administrar la forma en que los usuarios pueden entregar datos a un destino de acción, puedes especificar un atributo del usuario para el que el usuario debe tener un valor definido. |
parameters |
supportedFormats |
No | Es 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" . |
cadena |
supportedFormattings |
No | Es una lista de opciones de formato que admite la acción. Los valores válidos son "formatted" y "unformatted" . |
cadena |
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" . |
cadena |
iconName |
No | Es un URI de datos que representa la imagen de un ícono para la acción. | cadena |
requiredFields |
No | Es 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 | Es un valor 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 | Es un valor booleano que determina si la acción es una acción de OAuth. Esto determinará si se le enviará a la acción un vínculo de un solo uso para poder establecer state para un usuario específico para esta acción. |
Booleano |
usesStreaming |
No | Es un valor booleano que determina si la acción admite resultados de búsqueda transmitidos. Consulta la columna Usa transmisión de datos (Sí/No) en la lista de servicios integrados. Las acciones que transmiten resultados pueden requerir la configuración de un servidor de Action Hub local. Consulta la página de prácticas recomendadas Configura un Action Hub local para acciones que usan OAuth o transmisión para obtener más información. | Booleano |
minimumSupportedVersion |
No | Es la versión mínima de Looker en la que la acción aparecerá en la lista del Action Hub del panel Administrador. | cadena |
Puedes consultar ejemplos de las acciones del Action Hub de Looker en GitHub.
Tipos de acciones admitidos
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 búsqueda: Es una acción que envía una búsqueda completa. Por ejemplo, la acción de segmentación es una acción a nivel de la búsqueda.
- Acción a nivel de la celda: Una acción a nivel de la celda envía el valor de una sola celda específica en una tabla de datos. Este tipo de acción es diferente de las acciones de datos, que se pueden definir para dimensiones o medidas con el parámetro
action
. Para enviar información desde una celda específica dentro 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 en LookML deben especificar a qué etiquetas se asignan con el parámetrotags
de LookML. Por ejemplo, la acción de Twilio Message usa una etiquetaphone
para que los desarrolladores de LookML puedan controlar en qué campos de números de teléfono aparecerá la acción de Twilio. - 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 de SendGrid envía imágenes del panel por correo electrónico.
Cómo agregar atributos del usuario a acciones personalizadas
En el caso de las acciones personalizadas, puedes agregar atributos del 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 en un grupo de usuarios al que pertenezca, además del permiso de send_to_integration
, para ver la acción como una opción de destino cuando envíe o programe contenido.
Para agregar un atributo de usuario a tu acción, haz lo siguiente:
- 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 del usuario en el caso de los usuarios o grupos de usuarios que deben entregar contenido al destino de tu acción. (Estos usuarios también deben tener permisos de
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 en el 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,
}]
Aquí, user_attribute_name
es el atributo de usuario que se define en el campo Nombre de la página Atributos de usuario en la sección Usuarios del panel Administrador. 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 de usuario está encriptado y nunca se muestra en la IU de Looker una vez que se ingresa. Puedes especificar varios parámetros secundarios de atributos del usuario.
- Implementa tus actualizaciones en el servidor del centro de acción.
- 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 actualizas una acción existente, haz clic en el botón Actualizar para actualizar la lista de acciones. A continuación, haz clic en el botón Configuración.
- En la página de configuración o habilitación de la acción, 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 del atributo del usuario
a la derecha del campo correspondiente y seleccionar el atributo del usuario deseado.
Parámetros de requiredField
en acciones a nivel de la celda
En el caso de las acciones a nivel de la celda, puedes configurar los campos LookML de tu modelo para entregar datos a ese destino de acción. Para ello, especifica qué etiquetas admite tu acción en el parámetro requiredFields
de tu archivo de acción.
Parámetro | Obligatorio | Descripción | Tipo de datos |
---|---|---|---|
tag |
No | Si está presente, coincide con un campo que tiene esta etiqueta. | cadena |
any_tag |
No | Si está presente, reemplaza a tag y coincide con un campo que tiene cualquiera de las etiquetas proporcionadas. |
cadena |
all_tags |
No | Si está presente, reemplaza a tag y coincide con un campo que tiene todas las etiquetas proporcionadas. |
cadena |
Formatos de datos compatibles
La clase DataActionRequest
define el formato de entrega de datos disponible para que funcione la acción. En el caso de las acciones a nivel de la búsqueda, la solicitud contendrá un 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. En el caso de las acciones a nivel de la celda, el valor de la celda estará presente en DataActionRequest
.
Cómo configurar una acción para OAuth
Puedes configurar tu acción para que los usuarios puedan autenticarse en ella con OAuth. Aunque el Action Hub de Looker debe permanecer sin estado, puedes aplicar un estado a través de una solicitud de formulario desde la API de Looker Action.
Flujo de OAuth de 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 para el 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.
Por lo general, el flujo para crear acciones implica una solicitud /form
seguida de una solicitud /execute
. En el caso de OAuth, la solicitud /form
debe tener un método para determinar si el usuario está autenticado en el servicio de destino. Si el usuario ya está autenticado, la acción debe devolver un /form
normal de acuerdo con lo que requiera la solicitud de /execute
. Si el usuario no está autenticado, la acción devuelve un vínculo que inicializará un flujo de OAuth.
Cómo guardar 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 devuelve uses_oauth: true
en su definición, se le enviará un state_url
de un solo uso en cada solicitud de /form
de Looker. La URL state_url
es especial y se usa una sola vez para establecer el estado de un usuario para una acción determinada.
Si el usuario no está autenticado con el extremo, el /form
que se devuelve 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 devuelve. 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 centro 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 la forma /actions/src/actions/my_maction/oauth_redirect
y es el extremo que se usa si la autenticación devuelve un resultado.
Este extremo llamará al método oauthFetchInfo(...)
, que debe implementar el 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
de vuelta a Looker a través de POST. La próxima vez que un usuario realice una solicitud a esa acción, se enviará el estado recién guardado al Centro de acciones de Looker.
Cómo agregar tus archivos de acción al repo de Action Hub de Looker
Una vez que se escriba el archivo de acción, en el repo de Looker Action Hub, 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 los requisitos de los paquetes de Node.js que utilizaste para escribir la acción. Por ejemplo:
yarn add aws-sdk yarn add express
Instala las dependencias de Node.js del servidor del Centro de acciones de Looker.
yarn install
Ejecuta las pruebas que escribiste.
yarn test
Cómo probar una acción
Para realizar pruebas completas, puedes probar tu acción en tu instancia de Looker alojando un servidor de centro 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 hacia y desde Looker. Para ello, puedes usar una plataforma basada en la nube, como Heroku, como se muestra en el siguiente ejemplo. También puedes usar cualquier plataforma que cumpla con los requisitos mencionados anteriormente.
Cómo configurar un servidor de centro de acciones local
En este ejemplo, tomaremos la acción que desarrollamos en el repo de GitHub looker-open-source/actions/src/actions
y confirmaremos el código en una nueva rama de Git. Te recomendamos que trabajes en las funciones usando ramas para que puedas hacer un seguimiento de tu código con facilidad y, si lo deseas, crear una PR con Looker fácilmente.
Para comenzar, crea tu rama y, luego, agrega 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 devolverá la URL pública que ahora aloja el centro de acción para que la uses. Visita la URL o ejecuta
heroku logs
para confirmar que el centro de acción 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 devolverá 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 acción:
heroku config:set ACTION_HUB_BASE_URL="https://my-heroku-action-server-1234.herokuapp.com"
Establece la etiqueta del centro de acción:
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 la línea de comandos:
heroku run yarn generate-api-key
Si no usas Heroku, como en este ejemplo, usa lo siguiente:
yarn generate-api-key
Heroku devolverá tu token de autorización. Por ejemplo:
Authorization: Token token="abcdefg123456789"
Configura el secreto de tu centro de acción con la clave secreta:
heroku config:set ACTION_HUB_SECRET="abcdefg123456789"
Es posible que las implementaciones alojadas por el cliente requieran la configuración de variables de entorno adicionales que no se documentan aquí.
Para agregar tu acción en tu instancia local de Looker, ve a Administrador > Acciones.
- En la parte inferior de la lista de acciones, haz clic en Agregar Action Hub.
- Ingresa la URL de Action Hub y, de forma opcional, una clave secreta.
- Busca tu acción en la lista Actions del menú Admin 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 que incluyan el parámetro tags
adecuado.
Ya puedes probar tu acción.
Probar las 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 un Look. En el Look guardado, haz clic en el menú de la esquina superior derecha y selecciona Enviar con tu acción como destino. Si tienes un formulario para la entrega, Looker lo renderizará en la ventana Enviado.
Haz clic en Enviar prueba para entregar los datos. El estado de la acción aparecerá en el Historial del programador del 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 las 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 de la tabla de datos después de corregirlos.
- Si tu acción se entrega sin errores, puedes publicarla.
- Si quieres seguir alojando tu acción de forma privada, puedes publicarla en tu centro de acciones privado.
- Si deseas publicar tu acción para que la usen todos los clientes de Looker, consulta la sección sobre la publicación en el Centro de acciones de Looker.
Cómo publicar y habilitar una acción personalizada
Existen dos opciones de publicación para las acciones personalizadas:
- Publicación en el Centro de acciones de Looker: Esto hace que tu acción esté disponible para cualquier persona que use Looker.
- Publicar en un servidor de Action Hub privado: Esto hace que tu acción esté disponible solo en tu instancia de Looker.
Una vez que se publique tu acción, podrás habilitarla desde la página Acciones en el panel Administrador.
Publicación en el Action Hub de Looker
Este enfoque es el más sencillo y funciona para cualquier acción que desees poner a disposición de cualquier persona que use Looker.
Después de probar tu acción, puedes enviar una PR al repo 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 repo
looker-open-source/actions
como destino.Completa el formulario de envío de Looker Marketplace y Action Hub. Para obtener más información sobre los requisitos del formulario, consulta Envío de contenido a Looker Marketplace.
Looker revisará el código de acción. Nos reservamos el derecho de rechazar tu PR, pero podemos ayudarte con cualquier problema que tengas y ofrecerte sugerencias para mejorarla. Luego, fusionamos el código en el repo de
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 una opción de entrega de datos.
Publicación en un servidor privado del centro de acciones
Si tienes acciones personalizadas que son privadas para tu empresa o caso de uso, no debes agregar tu acción al repo de 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 de centro de acciones interno en tu propia infraestructura o con una plataforma de aplicaciones basada en la nube (en nuestro ejemplo, usamos Heroku). No olvides bifurcar el Action Hub de Looker en tu servidor privado del Action Hub antes de la implementación.
Cómo configurar un modelo de LookML para usarlo con una acción
Tanto para las acciones personalizadas como para las acciones disponibles en Looker Action Hub, debes identificar los campos de datos pertinentes con el parámetro tags
en tu modelo de LookML. En la página Acciones del panel Administrador, se proporcionará información sobre las etiquetas que se requieren para el servicio, si corresponde.
Por ejemplo, una integración de Twilio Send Message 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 texto secundario "La acción se puede usar con búsquedas que tienen un campo etiquetado como phone
".
Esto significa que el servicio Twilio Send Message 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, debes especificar tags: ["phone"]
para ese campo. Tu LookML para un campo de número de teléfono podría verse así:
dimension: phone {
tags: ["phone"]
type: string
sql: ${TABLE}.phone ;;
}
Una integración que no requiere etiquetas mostrará el texto secundario "La acción se puede usar con cualquier búsqueda" en la página Acciones del panel 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 para enviar datos.
¿Qué sigue?
Obtén información para entregar el contenido de un Look o un Explorar, o de un panel, a un servicio integrado.