Definición de reglas de direccionamiento
Para definir una regla de direccionamiento, debe especificar 1 o más destinos como destinos para las métricas. También puede definir 1 o más filtros de inclusión que definan las condiciones de cómo se direccionan esas métricas a esos destinos.
Para cada ruta que defina en la cuenta, puede configurar hasta 10 reglas. Las reglas especifican qué métricas se direccionan en una región y dónde direccionarlas. Para obtener más información, consulte Cómo funcionan las rutas en su cuenta.
Una regla consta de 1 acción, 1 o más destinos y 0 o más filtros de inclusión.
Destinos
Los destinos definen la lista de ID de destino donde se direccionan las métricas.
-
Puede especificar hasta tres ID de destino por regla.
-
Puede definir los ID de destino para los recursos que están disponibles en la misma región donde está configurando la ruta, en una región diferente y en una cuenta diferente.
Por ejemplo, puede definir una lista de destinos como se indica a continuación:
"targets": [{"id":"11111111-1111-1111-1111-111111111111"},{"id":"22222222-2222-2222-2222-222222222222"}]
Los destinos deben ser instancias de IBM Cloud Monitoring.
Acción
La acción define si IBM Cloud® Metrics Routing incluye o excluye métricas en la ruta. Se admiten dos acciones: send
y drop
. Si no se especifica, la acción predeterminada es enviar las métricas.
send
- Las métricas se envían, basándose en la regla de direccionamiento, en la ruta definida.
drop
- Las métricas se excluyen, basándose en la regla de direccionamiento, cuando se envían métricas en la ruta definida.
Filtros de inclusión
Los filtros de inclusión definen las condiciones que se utilizan para determinar qué métricas se direccionan a los destinos especificados en la regla.
Para direccionar todas las métricas, excluya la definición inclusion_filters
cuando configure una ruta.
Los filtros de inclusión se componen de operand
, operator
y value
:
operand
-
Operando es el nombre de la propiedad en el destino que se utiliza para filtrar datos. Los operandos siguientes están soportados:
location
,service_name
,service_instance
,resource_type
yresource
. El valor se extrae del CRN de destino. operator
-
Se da soporte a dos operadores:
in
yis
.in
-
El valor de la propiedad de operando se compara con una lista de valores.
Puede definir hasta 20 valores.
is
-
El valor de la propiedad de operando se compara con un único valor.
Cuando se utiliza
is
, sólo se puede especificar 1 valor.
value
-
Una serie, o una matriz de series, que se comparará con la propiedad
operand
para determinar si la métrica se direcciona o no. Cuando se utilizais
operator
,value
debe incluir una sola serie. Cuando se utilizain
operator
,value
puede incluir varias series en una matriz.Los valores válidos dependen de
operand
.location
- Cualquier ubicación donde esté disponible IBM Cloud Metrics Routing.
service_name
- El nombre de servicio CRN de un servicio [IBM Cloud que genera métricas gestionadas a través deIBM Cloud Metrics Routing
service_instance
,resource_type
yresource
- Valores adecuados para un servicio [IBM Cloud que genera métricas gestionadas a través deIBM Cloud Metrics Routing
Tenga en cuenta estas limitaciones al configurar filtros de inclusión.
-
Puede configurar hasta 7 filtros de inclusión para cada regla.
-
Puede configurar hasta 20 valores para
inclusion_filter.values
. -
Cada valor configurado para
inclusion_filter.values
puede tener un máximo de 100 caracteres.
Acceso de IAM
Los usuarios deben tener los roles IAM apropiados para trabajar con reglas de enrutamiento. Para obtener información sobre los roles de IAM, consulte Gestión del acceso de IAM.
Definición de reglas de enrutamiento mediante la interfaz de usuario
Puede configurar reglas de enrutamiento de acción y filtro de inclusión en la interfaz de usuario. para obtener más información, consulte Gestión de rutas.
Definición de reglas de direccionamiento utilizando la CLI
Las reglas para rutas y filtros de inclusión se definen en formato JSON. Las reglas se definen de las siguientes maneras:
- Utilizando la información de la opción
--rules
se pasa como JSON directamente en el mandato. - Utilizando la información de la opción
--files
se pasa como un archivo JSON.
Ejemplo que utiliza la opción --rules
El ejemplo siguiente especifica reglas directamente en la opción --rules
. En este ejemplo, todas las métricas de us-east
se direccionan a 11111111-1111-1111-1111-1111111111111
. Todas las métricas de appconnect
,
cloudant
y containers-kupernetes
se direccionan a 22222222-2222-2222-2222-222222222222
y 33333333-3333-3333-3333-3333333333333
.
[{"action": "send", "targets":[{"id":"11111111-1111-1111-1111-1111111111111"}], "inclusion_filters":[{"operand": "location","operator": "is","values": ["us-east"]}]},{"targets":[{"id":"22222222-2222-2222-2222-222222222222"},{"id":"33333333-3333-3333-3333-3333333333333"}], "inclusion_filters":[{"operand": "service_name","operator": "in","values": ["appconnect","cloudant","containers-kubernetes"]}]}]'
Ejemplo que utiliza la opción --file
El ejemplo siguiente especifica reglas pasando un archivo JSON denominado rules_def.json
en la opción --file
:
--file rules_def.json
El archivo rules_def.json
contiene:
[
{
"action":"send",
"targets": [
{
"id":"11111111-1111-1111-1111-111111111111"
},
{
"id":"22222222-2222-2222-2222-222222222222"
}
],
"inclusion_filters": [
{
"operand": "service_name",
"operator": "in",
"values": [
"appconnect",
"cloudant",
"containers-kubernetes"
]
},
{
"operand": "location",
"operator": "in",
"values": [
"us-south",
"eu-de"
]
}
]
}
]
En este ejemplo, sólo las métricas de appconnect
, cloudant
y containers-kubernetes
de las regiones us-south
y eu-de
se direccionan a los destinos 11111111-1111-1111-1111-111111111111
y 22222222-2222-2222-2222-222222222222
.
Definir reglas de direccionamiento utilizando la API
Los destinos y los filtros de inclusión se definen en las llamadas de API utilizando rules
. Los rules
se definen en una estructura JSON.
Por ejemplo, el ejemplo siguiente crea una ruta que se denomina my-route
y envía métricas de codeengine
y container-registry
en la región us-east
a los destinos 11111111-1111-1111-1111-111111111111
y 22222222-2222-2222-2222-222222222222
.
curl -X POST https://private.<REGION>.metrics-router.cloud.ibm.com/api/v3/routes -H "Authorization: Bearer <IAM_TOKEN>" -H 'content-type: application/json' -d '{
"name": "my-route",
"rules": [
{
"action":"send",
"targets": [{"id":"11111111-1111-1111-1111-111111111111"}, {"id":"22222222-2222-2222-2222-222222222222"}],
"inclusion_filters": [
{
"operand": "location",
"operator": "is",
"values": ["us-east"]
},
{
"operand": "service_name",
"operator": "in",
"values": ["codeengine","container-registry"]
}
]
}
]
}'
Para obtener más información, consulte la Referencia de API.