equinix_fabric_stream_subscription (Recurso)
El recurso compatible con la API Fabric V4 permite la creación y gestión de suscripciones a flujos Equinix Fabric
Documentación adicional:
- Cómo empezar: https://docs.equinix.com/observability/streaming-data/integratewithsink/
- API: https://docs.equinix.com/api-catalog/fabricv4/#tag/Stream-Subscriptions
Ejemplo de uso
resource "equinix_fabric_stream_subscription" "SPLUNK" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
event_selector = {
include = ["equinix.fabric.connection.*"]
}
metric_selector = {
include = ["equinix.fabric.connection.*"]
}
sink = {
type = "SPLUNK_HEC"
uri = "<splunk_uri>"
settings = {
event_index = "<splunk_event_index>"
metric_index = "<splunk_metric_index>"
source = "<splunk_source>"
}
credential = {
type = "ACCESS_TOKEN"
access_token = "<splunk_access_token>"
}
}
}
resource "equinix_fabric_stream_subscription" "SLACK" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
sink = {
type = "SLACK"
uri = "<slack_uri>"
}
}
resource "equinix_fabric_stream_subscription" "PAGER_DUTY" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
sink = {
type = "PAGERDUTY"
host = "<pager_duty_host"
settings = {
change_uri = "<pager_duty_change_uri>"
alert_uri = "<pager_duty_alert_uri>"
}
credential = {
type = "INTEGRATION_KEY"
integration_key = "<pager_duty_integration_key>"
}
}
}
resource "equinix_fabric_stream_subscription" "DATADOG" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
sink = {
type = "DATADOG"
host = "<datadog_host>"
settings = {
source = "Equinix"
application_key = "<datadog_application_key>"
event_uri = "<datadog_event_uri>"
metric_uri = "<datadog_metric_uri>"
}
credential = {
type = "API_KEY"
api_key = "<datadog_api_key>"
}
}
}
resource "equinix_fabric_stream_subscription" "MSTEAMS" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
sink = {
type = "TEAMS"
uri = "<msteams_uri>"
}
}
resource "equinix_fabric_stream_subscription" "servicenow" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
sink = {
type = "SERVICENOW"
host = "<servicenow_host>"
settings = {
source = "Equinix"
}
credential = {
type = "USERNAME_PASSWORD"
username = "<servicenow_username>"
password = "<servicenow_password>"
}
}
}
resource "equinix_fabric_stream_subscription" "webhook" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
sink = {
type = "WEBHOOK"
settings = {
format = "<webhook_format>"
event_uri = "<webhook_event_uri>"
metric_uri = "<webhook_metric_uri>"
}
}
}
resource "equinix_fabric_stream_subscription" "grafana" {
type = "STREAM_SUBSCRIPTION"
name = "<name>"
description = "<description>"
stream_id = "<stream_id>"
enabled = true
sink = {
type = "WEBHOOK"
settings = {
format = "OPENTELEMETRY"
event_uri = "<grafana_event_uri>"
metric_uri = "<grafana_metric_uri>"
}
}
}
Esquema
Requerido
description(Cadena) Descripción de la suscripción al flujo proporcionada por el clienteenabled(Booleano) Estado de la suscripción de streaming habilitadaname(Cadena) Nombre de la suscripción al flujo proporcionado por el clientesink(Atributos) Los datos del suscriptor del flujo Equinix (véase más abajo para el esquema anidado)stream_id(Cadena) El uuid del flujo que es el objetivo de la suscripción al flujotype(Cadena) Tipo de la solicitud de suscripción al flujo
Opcional:
event_selector(Atributos) Listas de eventos a incluir/excluir en la suscripción al flujo (ver abajo para esquema anidado)metric_selector(Atributos) Listas de métricas que deben incluirse/excluirse en la suscripción al flujo (véase más abajo para el esquema anidado)timeouts(Atributos) (véase más abajo para el esquema anidado)
Sólo lectura
change_log(Atributos) Detalles del último cambio en el recurso de flujo (véase más abajo para el esquema anidado)href(Cadena) URI asignado por Equinix del recurso de suscripción de flujoid(Cadena) El identificador único del recursostate(Cadena) Valor que representa el estado de aprovisionamiento para el recurso de flujouuid(Cadena) Identificador único asignado por Equinix del recurso de suscripción de flujo
Esquema anidado para sink
Necesario:
type(Cadena) Tipo de abonado
Opcional:
batch_enabled(Booleano) Interruptor booleano que permite la entrega de datos por lotesbatch_size_max(Número) Tamaño máximo del envío por lotes si está activadobatch_wait_time_max(Número) Tiempo máximo de espera para la entrega por lotes si está activadacredential(Atributos) Detalles de acceso para el tipo de sumidero especificado (véase más abajo para el esquema anidado)host(Cadena) Nombre de host conocido de determinados productos de suscripción al flujo de datos. No confundir con una URI variable.settings(Atributos) Ajustes del sumidero de suscripción al flujo (véase más abajo para el esquema anidado)uri(Cadena) Punto final http de acceso público destino para el flujo de datos
Esquema anidado para sink.credential
Necesario:
type(Cadena) Tipo de credencial que se está pasando
Opcional:
access_token(Cadena) Pasado como valor de cabecera de Autorizaciónapi_key(Cadena) Pasado como valor de cabecera de Autorizaciónintegration_key(Cadena) Pasado como valor de cabecera de Autorizaciónpassword(Cadena) Pasado como valor de cabecera de Autorizaciónusername(Cadena) Pasado como valor de cabecera de Autorización
Esquema anidado para sink.settings
Opcional:
application_key(Cadena)event_index(Cadena)event_uri(Cadena)format(Cadena)metric_index(Cadena)metric_uri(Cadena)source(Cadena)
Esquema anidado para event_selector
Necesario:
include(Lista de cadenas) Lista de eventos a incluir
Opcional:
except(Lista de cadenas) Lista de eventos a excluir
Esquema anidado para metric_selector
Necesario:
include(Lista de cadenas) Lista de métricas a incluir
Opcional:
except(Lista de cadenas) Lista de métricas a excluir
Esquema anidado para timeouts
Opcional:
create(Cadena) Una cadena que puede ser [analizada como una duración compuesta por números y sufijos de unidad, como "30s" o "2h45m". Las unidades de tiempo válidas son "s" (segundos), "m" (minutos), "h" (horas).delete(Cadena) Una cadena que puede ser [analizada como una duración compuesta por números y sufijos de unidad, como "30s" o "2h45m". Las unidades de tiempo válidas son "s" (segundos), "m" (minutos), "h" (horas). Establecer un tiempo de espera para una operación de destrucción sólo es aplicable si los cambios se guardan en el estado antes de que se produzca la operación de destrucción.read(Cadena) Una cadena que puede ser [analizada como una duración compuesta por números y sufijos de unidad, como "30s" o "2h45m". Las unidades de tiempo válidas son "s" (segundos), "m" (minutos), "h" (horas). Las operaciones de lectura se producen durante cualquier operación de actualización o planificación cuando la actualización está activada.update(Cadena) Una cadena que puede ser [analizada como una duración compuesta por números y sufijos de unidad, como "30s" o "2h45m". Las unidades de tiempo válidas son "s" (segundos), "m" (minutos), "h" (horas).
Esquema anidado para change_log
Sólo lectura:
created_by(Cadena) Nombre de usuario del creador del recurso de flujocreated_by_email(Cadena) Correo electrónico del creador del recurso de flujocreated_by_full_name(Cadena) Nombre legal del creador del recurso de flujocreated_date_time(Cadena) Hora de creación del recurso de flujodeleted_by(Cadena) Nombre de usuario del eliminador del recurso de flujodeleted_by_email(Cadena) Email del eliminador del recurso de flujodeleted_by_full_name(Cadena) Nombre legal del supresor del recurso de flujodeleted_date_time(Cadena) Hora de borrado del recurso de flujoupdated_by(Cadena) Nombre de usuario del último actualizador del recurso de flujoupdated_by_email(Cadena) Email del último actualizador del recurso de flujoupdated_by_full_name(Cadena) Nombre legal del último actualizador del recurso de flujoupdated_date_time(Cadena) Última hora de actualización del recurso de flujo