Definición
helloNuevo en la versión 5.0.
hellodevuelve un documento que describe la función del Instanciamongod. Si se especifica el campo opcionalsaslSupportedMechs, el comando también devuelve unarray of SASL mechanismsutilizado para crear las credenciales del usuario especificado.Si la instancia es miembro de un conjunto de réplicas, entonces
hellodevuelve un subconjunto de la configuración y el estado del conjunto de réplicas, incluido si la instancia es o no la principal del conjunto de réplicas.Cuando se envía a una instancia
mongodque no es nodo de un set de réplicas,hellodevuelve un subconjunto de esta información.MongoDB drivers y clientes usan
hellopara determinar el estado de los miembros del set de réplicas y descubrir otros miembros de un set de réplicas.
Compatibilidad
Este comando está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Nota
Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Sintaxis
El comando tiene la siguiente sintaxis:
db.runCommand( { hello: 1 } )
El comando hello acepta los campos opcionales saslSupportedMechs: <db.user> para devolver un campo adicional hello.saslSupportedMechs en su resultado y comment <any> para añadir un comentario de registro asociado al comando.
db.runCommand( { hello: 1, saslSupportedMechs: "<db.username>", comment: <any> } )
El método db.hello() en mongosh proporciona un contenedor en torno a hello.
Comportamiento
Desconexión del cliente
Si el cliente que emitió hello se desconecta antes de que la operación se complete, MongoDB marca hello para su terminación usando killOp.
Salida
Todas las instancias
Los siguientes campos son comunes a todos los hello roles:
hello.isWritablePrimaryUn valor booleano que informa cuando este nodo es escribible. Si
true, entonces esta instancia es una primaria en un set de réplicas, o una instanciamongos, o una instancia autónomomongod.Este campo será
falsesi la instancia es un miembro secundario de un set de réplicas o si el miembro es un árbitro de un set de réplicas.
hello.maxBsonObjectSizeEl tamaño máximo permitido de un objeto BSON en bytes para este proceso. Si no se proporciona, los clientes deben asumir un tamaño máximo de
mongod"16 * 1024 * 1024".
hello.maxMessageSizeBytesEl tamaño máximo permitido de un mensaje del protocolo de conexión BSON. El valor por defecto es
48000000bytes.
hello.maxWriteBatchSizeEl número máximo de operaciones de escritura permitidas en un lote de escritura. Si un lote supera este límite, el controlador del cliente lo divide en grupos más pequeños, cada uno con recuentos menores o iguales al valor de este campo.
El valor de este límite es
100,000escrituras.
hello.localTimeDevuelve la hora del servidor local en UTC. Este valor es una fecha ISO.
hello.logicalSessionTimeoutMinutesEl tiempo en minutos que una sesión permanece activa después de su uso más reciente. Las sesiones que no hayan recibido una nueva operación de lectura/guardado del cliente o que no se hayan actualizado con
refreshSessionsdentro de este umbral se eliminan de la caché. El servidor puede limpiar el estado asociado a una sesión caducada en cualquier momento.Solo disponible cuando
featureCompatibilityVersiones"3.6"o superior.
hello.connectionIdUn identificador para la conexión saliente de la instancia
mongod/mongoscon el cliente.
hello.minWireVersionLa versión más temprana del protocolo de conexión que esta
mongodomongosinstancia es capaz de utilizar para comunicarse con los clientes.Los clientes pueden usar
minWireVersionpara ayudar a negociar la compatibilidad con MongoDB.
hello.maxWireVersionLa última versión del protocolo de conexión que esta
mongodomongosinstancia es capaz de utilizar para comunicarse con los clientes.Los clientes pueden usar
maxWireVersionpara ayudar a negociar la compatibilidad con MongoDB.
hello.readOnlyUn valor booleano que, cuando
truees, indica quemongodo se está ejecutando en modo de solomongoslectura.
hello.compressionUna matriz que enumera los algoritmos de compresión utilizados o disponibles para su uso (es decir, comunes tanto para el cliente como para la
mongodmongosinstancia o) para comprimir la comunicación entre el cliente y la instanciamongodmongoso.El campo solo está disponible si se utiliza la compresión. Por ejemplo:
Si el
mongodestá habilitado para usar ambos compresoressnappy,zliby un cliente ha especificadozlib, el campocompressioncontendría:"compression": [ "zlib" ] Si el
mongodestá habilitado para usar ambos compresoressnappy,zliby un cliente ha especificadozlib,snappy, el campocompressioncontendría:"compression": [ "zlib", "snappy" ] Si el está habilitado para usar
mongodelsnappycompresor y un cliente hazlib,snappyespecificado, el campocompressioncontendrá:"compression": [ "snappy" ] Si el
mongodtiene habilitado el uso del compresorsnappyy un cliente ha especificadozlibo el cliente no ha especificado ningún compresor, el campo se omite.
Es decir, si el cliente no especifica compresión o si el cliente especifica un compresor no habilitado para la
mongodconectada o la instancia demongos, el campo no se devuelve.
hello.saslSupportedMechsUna serie de mecanismos SASL utilizados para crear las credenciales del usuario. Los mecanismos SASL compatibles son:
GSSAPISCRAM-SHA-256SCRAM-SHA-1
El campo solo se devuelve cuando se ejecuta el comando con el campo
saslSupportedMechs:db.runCommand( { hello: 1, saslSupportedMechs: "<db.username>" } )
Instancias fragmentadas
Las instancias mongos agregan el siguiente campo al documento de respuesta de hello:
Sets de réplicas
hello contiene estos campos cuando lo devuelve un miembro de un conjunto de réplicas:
hello.hostsUna matriz de cadenas en el formato
"[hostname]:[port]"que enumera todos los miembros del conjunto de réplicas que no son ocultos, pasivosni árbitros.Los controladores utilizan esta matriz y para determinar qué miembros
hello.passivesleer.
hello.secondaryUn valor booleano que, cuando es
true, indica si elmongodes un miembro secundario de un set de réplicas.
hello.passivesUn arreglo de strings en el formato de
"[hostname]:[port]"listando todos los nodos del set de réplicas que tienen unmembers[n].priorityde0.Este campo solo aparece si hay al menos un nodo con un
members[n].priorityde0.Los controladores utilizan esta matriz y para determinar qué miembros
hello.hostsleer.
hello.arbitersUn arreglo de cadenas en formato
"[hostname]:[port]"que enumera todos los miembros del set de réplicas que son árbitros.Este campo solo aparece si hay al menos un árbitro en el set de réplicas.
hello.primaryUna string en el formato de
"[hostname]:[port]"que enumera el primario miembro del set de réplicas.
hello.arbiterOnlyUn valor booleano que, cuando es
true, indica que la instancia actual es un árbitro. El campoarbiterOnlysolo está presente si la instancia es un árbitro.
hello.passiveUn valor booleano que, cuando es
true, indica que la instancia actual es pasiva. El campopassivesolo está presente para los miembros con unmembers[n].priorityde0.
hello.hiddenUn valor booleano que, cuando
true, indica que la instancia actual está oculta. El campohiddensolamente está presente para miembros ocultos.
hello.tagsUn documento
tagscontiene pares de campo de etiqueta y valor definidos por el usuario para el set de réplicas.{ "<tag1>": "<string1>", "<tag2>": "<string2>",... } Para las operaciones de lectura, se puede especificar un conjunto de etiquetas en la preferencia de lectura para dirigir las operaciones a los miembros del set de réplicas con las etiquetas especificadas.
Para las operaciones de escritura, puede crear una preocupación de escritura personalizada utilizando
settings.getLastErrorModessettings.getLastErrorDefaultsy.
Para obtener más información, consultar Configurar conjuntos de etiquetas del set de réplicas.
hello.meEl
[hostname]:[port]del nodo que devolvióhello.
hello.electionIdUn identificador único para cada elección. Se incluye solo en la salida de
hellopara la primaria. Es utilizado por los clientes para determinar cuándo ocurren las elecciones.
hello.lastWriteUn documento que contiene optime e información de fecha para la operación de guardar más reciente de la base de datos.
hello.lastWrite.opTimeUn objeto que proporciona el tiempo óptimo de la última operación de escritura.
hello.lastWrite.lastWriteDateUn objeto de fecha que contiene la hora de la última operación de escritura.
hello.lastWrite.majorityOpTimeUn objeto que proporciona el optime de la última operación de escritura legible por
majoritylecturas.
hello.lastWrite.majorityWriteDateUn objeto de fecha que contiene la hora de la última operación de guardado legible por
majoritylecturas.
Para obtener detalles sobre el campo de estado ok, el campo operationTime y el campo $clusterTime, consulte Respuesta del comando.