Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Personalizar la salida de Atlas CLI

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

Puedes especificar una plantilla Go en cualquier comando de la CLI de Atlas o a través de un archivo separado. Para obtener más información sobre plantillas Go, consulta Paquete de plantillas. Para aprender los tipos y propiedades disponibles para cada respuesta, consulte tipos de Atlas.

Puedes especificar una plantilla con el comando utilizando la opción --output o -o:

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

De forma alternativa, puedes especificar una plantilla mediante un archivo utilizando 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 del número de proyectos en la organización especificada:

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

El comando anterior devuelve la siguiente salida:

Count: 2

El siguiente comando atlas clusters describe utiliza la plantilla para recuperar la cadena de conexión de un clúster Atlas llamado getStarted. Utiliza el perfil por defecto para acceder a Atlas.

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

El comando anterior devuelve una string similar a la siguiente:

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

Se puede utilizar MongoDB Shell, mongosh, para conectarse al clúster getStarted con la 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 usuario User1.

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

Por ejemplo, considera 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 la siguiente salida:

Projects: 5e2211c17a3e5a48f5497de3 5f455b39749bea5fb575dccc

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

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 hacen referencia al elemento JSON que devuelve un comando de la 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 atlas organizations apiKeys list. La expresión json-path limita la salida al campo desc de la primera clave, en lugar de devolver la lista completa de claves.

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

Ejecutar el mismo comando con --output json devuelve el elemento completo JSON desde la API. Es importante entender la estructura JSON devuelta por un comando para poder operar sobre ella con json-path.

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

[ //``$`` 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 Atlas organizaciones apiKeys list. La expresión json-path limita la salida al campo desc del objeto JSON específico JSON con id d2c9ccf2d1960e736a95d585.

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

En el siguiente ejemplo, un usuario recupera información de nodos privados con Atlas privateEndpoints AWS describe. La expresión json-path limita la salida al campo status del elemento raíz.

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