problem.get

Descripción

integer/array problem.get(parámetros de objeto)

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

Este método es para recuperar problemas no resueltos. También es posible, si se especifica, recuperar adicionalmente problemas resueltos recientemente. El período que determina cuán antiguo es "recientemente" se define en AdministraciónGeneral. Los problemas que se resolvieron antes de ese período no se mantienen en la tabla de problemas. Para recuperar problemas que se resolvieron más atrás en el pasado, utilice el método event.get.

Este método puede devolver problemas de una entidad eliminada si estos problemas aún no han sido eliminados por el housekeeper.

Este método está disponible para usuarios de cualquier tipo. Los permisos para llamar al método pueden ser revocados en la configuración del rol de usuario. Consulte Roles de usuario para obtener 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
eventids ID/array Devuelve solo los problemas con los ID especificados.
groupids ID/array Devuelve solo los problemas creados por objetos que pertenecen a los grupos de hosts especificados.
hostids ID/array Devuelve solo los problemas creados por objetos que pertenecen a los hosts especificados.
objectids ID/array Devuelve solo los problemas creados por los objetos especificados.
source integer Devuelve solo los problemas del tipo especificado.

Consulte la página del objeto de evento de problema para ver una lista de los tipos de evento admitidos.

Predeterminado: 0 - problema creado por un trigger.
object integer Devuelve solo los problemas creados por objetos del tipo especificado.

Consulte la página del objeto de evento de problema para ver una lista de los tipos de objeto admitidos.

Predeterminado: 0 - trigger.
acknowledged boolean Si se establece en true, devuelve solo los problemas reconocidos.
action integer Devuelve solo los problemas para los que se han realizado las acciones de actualización de eventos especificadas. Para varias acciones, utilice la suma de cualesquiera valores de mapa de bits aceptables como máscara de bits (por ejemplo, 34 para reconocer y suprimir el evento).
action_userids ID/array Devuelve solo los problemas con los ID especificados de los usuarios que realizaron las acciones de actualización del evento de problema.
suppressed boolean Si se establece en true, devuelve solo los problemas suprimidos.
symptom boolean Si se establece en true, devuelve solo los eventos de problema de síntoma.
severities integer/array Devuelve solo los problemas con las severidades de evento especificadas. Se aplica solo si el objeto es un trigger.
evaltype integer Método de evaluación de etiquetas.

Valores posibles:
0 - (predeterminado) And/Or;
2 - Or.
tags array Devuelve solo los problemas con las etiquetas especificadas.
Formato: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Una matriz vacía devuelve todos los problemas.

Valores posibles de operator:
0 - (predeterminado) Contiene;
1 - Igual a;
2 - No contiene;
3 - No es igual a;
4 - Existe;
5 - No existe.
recent boolean Si se establece en true, devuelve problemas recientes, incluidos los resueltos dentro de ok_period y cualquier problema no resuelto.
Si se establece en false, devuelve solo los problemas no resueltos.
eventid_from string Devuelve solo los problemas con ID mayores o iguales que el ID especificado.
eventid_till string Devuelve solo los problemas con ID menores o iguales que el ID especificado.
time_from timestamp Devuelve solo los problemas que se han creado después de la hora especificada o en ella.
time_till timestamp Devuelve solo los problemas que se han creado antes de la hora especificada o en ella.
selectAcknowledges query Devuelve una propiedad acknowledges con las actualizaciones del problema. Las actualizaciones del problema se ordenan en orden cronológico inverso.

El objeto de actualización del problema tiene las siguientes propiedades:
acknowledgeid - (ID) ID de la actualización;
userid - (ID) ID del usuario que actualizó el evento;
eventid - (ID) ID del evento actualizado;
clock - (timestamp) hora en la que se actualizó el evento;
message - (string) texto del mensaje;
action - (integer) tipo de acción de actualización (consulte event.acknowledge);
old_severity - (integer) severidad del evento antes de esta acción de actualización;
new_severity - (integer) severidad del evento después de esta acción de actualización;
suppress_until - (timestamp) hora hasta la que se suprimirá el evento;
taskid - (ID) ID de la tarea si el evento actual está experimentando un cambio de rango.

Admite count.
selectTags query Devuelve una propiedad tags con las etiquetas del problema. Formato de salida: [{"tag": "<tag>", "value": "<value>"}, ...].
selectSuppressionData query Devuelve una propiedad suppression_data con la lista de mantenimientos activos y supresiones manuales:
maintenanceid - (ID) ID del mantenimiento;
userid - (ID) del usuario que suprimió el problema;
suppress_until - (integer) hora hasta la que el problema estará suprimido.
filter object Devuelve solo aquellos resultados que coinciden exactamente con el filtro especificado.

Acepta un objeto, donde las claves son nombres de propiedades y los valores son un valor único o una matriz de valores con los que se comparará.

No admite propiedades del tipo de datos text.
sortfield string/array Ordena el resultado por las propiedades especificadas.

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

Valores de retorno

(entero/matriz) Devuelve:

  • una matriz de objetos;
  • el recuento de objetos recuperados, si el parámetro countOutput ha sido usado.

Ejemplos

Recuperando eventos de problemas de disparadores

Recuperar eventos recientes del disparador "15112".

Solicitud:

{
    "jsonrpc": "2.0",
    "method": "problem.get",
    "params": {
        "output": "extend",
        "selectAcknowledges": "extend",
        "selectTags": "extend",
        "selectSuppressionData": "extend",
        "objectids": "15112",
        "recent": true,
        "sortfield": ["eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Respuesta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "1245463",
            "source": "0",
            "object": "0",
            "objectid": "15112",
            "clock": "1472457242",
            "ns": "209442442",
            "r_eventid": "1245468",
            "r_clock": "1472457285",
            "r_ns": "125644870",
            "correlationid": "0",
            "userid": "1",
            "name": "El agente Zabbix en localhost no está disponible durante 5 minutos",
            "acknowledged": "1",
            "severity": "3",
            "cause_eventid": "0",
            "opdata": "",
            "acknowledges": [
                {
                    "acknowledgeid": "14443",
                    "userid": "1",
                    "eventid": "1245463",
                    "clock": "1472457281",
                    "message": "problema resuelto",
                    "action": "6",
                    "old_severity": "0",
                    "new_severity": "0",
                    "suppress_until": "1472511600",
                    "taskid": "0"
                }
            ],
            "suppression_data": [
                {
                    "maintenanceid": "15",
                    "suppress_until": "1472511600",
                    "userid": "0"
                }
            ],
            "suppressed": "1",
            "tags": [
                {
                    "tag": "test-tag",
                    "value": "test-value"
                }
            ]
        }
    ],
    "id": 1
}

Recuperar problemas reconocidos por el usuario especificado

Recuperando problemas reconocidos por el usuario con ID=10

Solicitud:

{
    "jsonrpc": "2.0",
    "method": "problem.get",
    "params": {
        "output": "extend",
        "action": 2,
        "action_userids": [10],
        "selectAcknowledges": ["userid", "action"],
        "sortfield": ["eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Respuesta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "1248566",
            "source": "0",
            "object": "0",
            "objectid": "15142",
            "clock": "1472457242",
            "ns": "209442442",
            "r_eventid": "1245468",
            "r_clock": "1472457285",
            "r_ns": "125644870",
            "correlationid": "0",
            "userid": "10",
            "name": "Zabbix agent on localhost is unreachable for 5 minutes",
            "acknowledged": "1",
            "severity": "3",
            "cause_eventid": "0",
            "opdata": "",
            "acknowledges": [
                {
                    "userid": "10",
                    "action": "2"
                }
            ],
            "suppressed": "0"
        }
    ],
    "id": 1
}

Ver también

Fuente

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