Docs Menu
Docs Home
/ /

Personalizar la salida de la CLI de Atlas

Puede personalizar los campos y el formato de salida de Atlas CLI utilizando una plantilla Go o una ruta JSON, lo que facilita la automatización de procesos basados ​​en la salida de Atlas CLI.

Puede especificar una plantilla de Go dentro de cualquier comando de la CLI de Atlas o mediante un archivo independiente. Para obtener más información sobre las plantillas de Go, consulte Plantilla de paquetePara conocer los tipos y propiedades disponibles para cada respuesta, consulte Tipos de Atlas.

Puede especificar una plantilla con el comando usando el --output o la opción -o:

--output|-o go-template="{{<template>}}"

Alternativamente, puede especificar una plantilla a través de un archivo usando la opción --output o -o:

--output|-o go-template-file="<path-to-template-file>"

El siguiente comando utiliza una plantilla para recuperar un recuento de la cantidad de proyectos en la organización especificada:

atlas projects ls --orgId 5ab5cedf5g5h5i5j5kl12mn4 -o go-template="Count: {{.TotalCount}}"

El comando anterior devuelve el siguiente resultado:

Count: 2

La siguiente El comandodescribe de clústeres Atlas usa la plantilla para recuperar la cadena de conexión de un clúster Atlas getStarted llamado. Utiliza el perfil predeterminado para acceder a Atlas.

atlas clusters describe getStarted -o go-template="Parse: {{.SrvAddress}}"

El comando anterior devuelve una cadena similar a la siguiente:

Parse: mongodb+srv://getstarted.example.mongodb.net

Puede usar MongoDB Shell,, para conectarsemongosh al getStarted clúster con srvAddress y la cadena de conexión. Este ejemplo utiliza la cadena de conexión devuelta por el comando anterior para un usuario con el nombre de User1 usuario.

mongo "mongodb+srv://getstarted.example.mongodb.net" --username User1 --password ChangeThisPasswordToSomethingSecure

Por ejemplo, considere el siguiente archivo llamado template.tmpl:

Projects: {{range .Results}}{{.ID}} {{end}}

El siguiente comando utiliza el archivo template.tmpl para recuperar los ID de los proyectos en la organización especificada:

atlas projects ls --orgId 5ab5cedf5g5h5i5j5kl12mn4 -o go-template-file="template.tmpl"

El comando anterior devuelve el siguiente resultado:

Projects: 5e2211c17a3e5a48f5497de3 5f455b39749bea5fb575dccc

El tipo de salida json-path limita los resultados de un comando a los campos que usted especifique.

Cuando se agrega la opción --output a un comando, se puede especificar el tipo json-path. Debes proporcionar a json-path una expresión para evaluar tus resultados, lo que significa que debes conocer los campos json devueltos por tu comando.

<command> --output|-o json-path='$<expression>'

json-path Las expresiones se refieren a la ElementoJSON que devuelve un comando CLI de Atlas. El $ carácter representa el elemento raíz, que suele ser un objeto o una matriz.

Para obtener una lista de caracteres válidos y sus funciones, consulte Expresiones JSONPath.

En el siguiente ejemplo, un usuario recupera sus claves de API con la lista apiKeys de Atlas Organizations. La json-path expresión limita la salida al desc campo de la primera clave, en lugar de devolver la lista completa de claves.

atlas organizations apikeys list --output json-path='$[0].desc'
> owner_key

Al ejecutar el mismo comando con,--output json se devuelve el elemento JSON completo de la API. Es importante comprender la estructura JSON que devuelve un comando para poder operar con él json-path con.

Usando la siguiente salida JSON completa como referencia,--output json-path con la expresión $[0].desc encuentra y devuelve solo el "owner_key" valor:

[ //``$`` represents the outer array.
{ // ``[0]`` refers to the first element in the array (using a 0-based index).
"id": "60e736a95d585d2c9ccf2d19",
"desc": "owner_key", //``.desc`` refers to the ``desc`` field of that element.
"roles": [
{
"orgId": "5d961a949ccf64b4e7f53bac",
"roleName": "ORG_OWNER"
}
],
"privateKey": "********-****-****-c4e26334754f",
"publicKey": "xtfmtguk"
},
{
"id": "d2c9ccf2d1960e736a95d585",
"desc": "member_key",
"roles": [
{
"orgId": "5d961a949ccf64b4e7f53bac",
"roleName": "ORG_MEMBER"
}
],
"privateKey": "********-****-****-c4e26334754f",
"publicKey": "vfgcttku"
},
]

En el siguiente ejemplo, un usuario recupera sus claves API con la lista apiKeys de Atlas Organizations. La json-path expresión limita la salida al desc campo del objeto JSON específico id d2c9ccf2d1960e736a95d585 con.

atlas organizations apikeys list --output json-path='$[? @.id=="d2c9ccf2d1960e736a95d585"].desc'
> member_key

En el siguiente ejemplo, un usuario recupera información de un punto de conexión privado con atlas privateEndpoints aws describe. La json-path expresión limita la salida al status campo del elemento raíz.

atlas privateendpoints aws describe 601a4044da900269480a2533 --output json-path='$.status'
> WAITING_FOR_USER

Volver

Variables de entorno

En esta página