Menu Docs
Página inicial do Docs
/ /
Atlas CLI
/

Personalizar a saída do Atlas CLI

Você pode personalizar os campos de saída e o formato do Atlas CLI usando um modelo Go ou um caminho JSON, o que facilita a automatização de processos com base no resultado do Atlas CLI.

You can specify a Go template within any Atlas CLI command or through a separate file. To learn more about Go templates, see Package template. To learn the types and properties available for each response, see Atlas types.

Você pode especificar um modelo com o comando utilizando a opção --output ou -o :

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

Alternativamente, você pode especificar um modelo por meio de um arquivo usando a opção --output ou -o :

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

O comando a seguir usa um modelo para recuperar uma contagem do número de projetos na organização especificada:

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

O comando anterior retorna a seguinte saída:

Count: 2

O seguinte comando Atlas clusters describe usa o modelo para recuperar a connection string de um Atlas cluster chamado getStarted. Ele usa o perfil padrão para acessar o Atlas.

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

O comando anterior retorna uma string semelhante à seguinte:

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

Você pode usar o MongoDB Shell, mongosh, para se conectar ao cluster getStarted com srvAddress e a connection string. Este exemplo utiliza a connection string retornada pelo comando anterior para um usuário com o nome de usuário User1.

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

Por exemplo, considere o seguinte arquivo chamado template.tmpl :

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

O seguinte comando utiliza o arquivo template.tmpl para recuperar as ID do projeto na organização especificada:

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

O comando anterior retorna a seguinte saída:

Projects: 5e2211c17a3e5a48f5497de3 5f455b39749bea5fb575dccc

O tipo de saída json-path limita os resultados de um comando aos campos que você especifica.

Ao adicionar a opção --output a um comando, você pode especificar o tipo json-path. Você deve fornecer a json-path uma expressão para avaliar em relação aos seus resultados, o que significa que você deve estar ciente dos campos json retornados pelo seu comando.

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

json-path expressões referem-se ao elementoJSON que um comando Atlas CLI retorna. O caractere $ representa o elemento raiz, que geralmente é um objeto ou uma array.

Para obter uma lista de caracteres válidos e suas funções, consulte Expressões JSONPath.

No exemplo a seguir, um usuário recupera suas chaves de API com a lista de apiKeys da organização Atlas. A expressão json-path limita a saída ao campo desc da primeira chave, em vez de retornar toda a lista de chaves.

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

A execução do mesmo comando com --output json retorna o elemento JSON completo da API. É importante entender a estrutura JSON retornada por um comando para operá-la com json-path.

Utilizando a seguinte saída JSON completa como referência, o --output json-path com a expressão $[0].desc localiza e retorna somente o 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"
},
]

No exemplo a seguir, um usuário recupera suas chaves de API com a lista de apiKeys da organização Atlas. A expressão json-path limita a saída ao campo desc do objeto JSON específico com id d2c9ccf2d1960e736a95d585.

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

No exemplo a seguir, um usuário recupera informações para um endpoint privado com Atlas privateEndpoints Amazon Web Services describe. A expressão json-path limita a saída ao campo status do elemento raiz.

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

Voltar

Variáveis de ambiente

Nesta página