hostprototype.get

Descripción

integer/array hostprototype.get(object parameters)

El método permite recuperar prototipos de equipo de acuerdo con los parámetros dados.

Este método está disponible para usuarios de cualquier tipo. Los permisos para llamar al método se pueden revocar en la configuración de roles de usuario. Ver Roles de usuario para más información.

Parámetros

(object) Parámetros que definen la salida deseada.

El método admite los siguientes parámetros.

Parámetro Tipo Descripción
hostids ID/array Devolver solo los prototipos de host con los IDs dados.
discoveryids ID/array Devolver solo los prototipos de host que pertenecen a las reglas LLD dadas.
inherited boolean Si se establece en true, devuelve solo los items heredados de una template.
selectDiscoveryData query Devuelve una propiedad discoveryData con los datos del objeto de descubrimiento del prototipo de host. El objeto de descubrimiento del prototipo de host vincula un prototipo de host descubierto con un prototipo de host del que se descubrió.

Tiene las siguientes propiedades:
host - (string) ID del host;
parent_hostid - (string) ID del prototipo de host del que se ha creado el prototipo de host;
status - (int) estado de descubrimiento del prototipo de host:
0 - (por defecto) el prototipo de host está descubierto,
1 - el prototipo de host ya no está descubierto;
ts_delete - (timestamp) hora en la que se eliminará un prototipo de host que ya no se descubre;
ts_disable - (timestamp) hora en la que se deshabilitará un prototipo de host que ya no se descubre;
disable_source - (int) indicador de si el prototipo de host fue deshabilitado por una regla LLD o manualmente:
0 - (por defecto) deshabilitado automáticamente,
1 - deshabilitado por una regla LLD.
selectDiscoveryRule query Devuelve una propiedad discoveryRule con la regla LLD a la que pertenece el prototipo de host.
selectDiscoveryRulePrototype query Devuelve una propiedad discoveryRulePrototype con el prototipo de regla LLD principal al que pertenece el prototipo de host.
selectInterfaces query Devuelve una propiedad interfaces con las interfaces personalizadas del prototipo de host.
selectGroupLinks query Devuelve una propiedad groupLinks con los enlaces de grupo del prototipo de host.
selectGroupPrototypes query Devuelve una propiedad groupPrototypes con los prototipos de grupo del prototipo de host.
selectMacros query Devuelve una propiedad macros con las macros del prototipo de host.
selectParentHost query Devuelve una propiedad parentHost con el host al que pertenece el prototipo de host.
selectTags query Devuelve una propiedad tags con las etiquetas del prototipo de host.
selectTemplates query Devuelve una propiedad templates con las templates vinculadas al prototipo de host.

Admite count.
sortfield string/array Ordena el resultado por las propiedades dadas.

Valores posibles: hostid, host, name, status, discovered.
countOutput boolean Estos parámetros se describen en el comentario de referencia.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valores de devueltos

(integer/array) Returns either:

  • una matriz de objetos;
  • la suma de los objetos devueltos, si el parámetros countOutput está siendo usado

Ejemplos

Recuperación de prototipos de equipo de una regla LLD

Recupere todos los prototipos de equipo, sus vínculos de grupo, prototipos de grupo y etiquetas de una regla LLD.

Solicitud:

{
    "jsonrpc": "2.0",
    "method": "hostprototype.get",
    "params": {
        "output": "extend",
        "selectInterfaces": "extend",
        "selectGroupLinks": "extend",
        "selectGroupPrototypes": "extend",
        "selectTags": "extend",
        "discoveryids": "23554"
    },
    "id": 1
}

Respuesta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10092",
            "host": "{#HV.UUID}",
            "name": "{#HV.UUID}",
            "status": "0",
            "templateid": "0",
            "discover": "0",
            "custom_interfaces": "1",
            "inventory_mode": "-1",
            "groupLinks": [
                {
                    "group_prototypeid": "4",
                    "hostid": "10092",
                    "groupid": "7",
                    "templateid": "0"
                }
            ],
            "groupPrototypes": [
                {
                    "group_prototypeid": "7",
                    "hostid": "10092",
                    "name": "{#CLUSTER.NAME}",
                    "templateid": "0"
                }
            ],
            "tags": [
                {
                    "tag": "datacenter",
                    "value": "{#DATACENTER.NAME}"
                },
                {
                    "tag": "instance-type",
                    "value": "{#INSTANCE_TYPE}"
                }
            ],
            "interfaces": [
                {
                    "main": "1",
                    "type": "2",
                    "useip": "1",
                    "ip": "127.0.0.1",
                    "dns": "",
                    "port": "161",
                    "details": {
                        "version": "2",
                        "bulk": "1",
                        "community": "{$SNMP_COMMUNITY}",
                        "max_repetitions": "10"
                    }
                }
            ]
        }
    ],
    "id": 1
}

Ver también

Fuente

CHostPrototype::get() en ui/include/classes/api/services/CHostPrototype.php.