apmspan.get

Descrição

integer/array apmspan.get(object parameters)

O método permite recuperar spans de acordo com os parâmetros fornecidos.

Este método está disponível para usuários de qualquer tipo. As permissões para chamar o método podem ser revogadas nas configurações da função de usuário. Consulte Funções de usuário para obter mais informações.

Parâmetros

(object) Parâmetros que definem a saída desejada.

O método aceita os seguintes parâmetros.

Parâmetro Tipo Descrição
time_from timestamp Retorna somente spans iniciados no horário especificado ou após ele.

Comportamento do parâmetro:
- obrigatório
time_till timestamp Retorna somente spans iniciados antes do horário especificado.

Comportamento do parâmetro:
- obrigatório
traceids string/array Retorna somente spans pertencentes aos traces especificados.
spanids string/array Retorna somente spans com os IDs especificados.
parent_spanids string/array Retorna somente spans com os parent spans especificados.
resource_attributes object/array Retorna somente spans com os atributos de recurso especificados.
Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].
Uma matriz vazia retorna todos os spans.

Possíveis valores de operador:
0 - (padrão) Contém;
1 - É igual a;
2 - Não contém;
3 - Não é igual a;
4 - Existe;
5 - Não existe.
resource_attributes_evaltype integer Método de avaliação das condições em resource_attributes.

Valores possíveis:
0 - (padrão) E/OU;
2 - OU.
span_attributes object/array Retorna somente spans com os atributos de span especificados.
Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].
Uma matriz vazia retorna todos os spans.

Possíveis valores de operador:
0 - (padrão) Contém;
1 - É igual a;
2 - Não contém;
3 - Não é igual a;
4 - Existe;
5 - Não existe.
span_attributes_evaltype integer Método de avaliação das condições em span_attributes.

Valores possíveis:
0 - (padrão) E/OU;
2 - OU.
min_duration integer Retorna somente spans cuja duração seja maior ou igual ao valor especificado, em nanossegundos.
max_duration integer Retorna somente spans cuja duração seja menor que o valor especificado, em nanossegundos.
filter object Retorna somente os resultados que correspondem exatamente ao filtro especificado.

Aceita um objeto cujas chaves são nomes de propriedades e cujos valores são um único valor ou uma matriz de valores a serem comparados.

Propriedades compatíveis: traceid, spanid, parent_spanid, trace_state, span_name, span_kind, service_name, scope_name, scope_version, status_code, status_message.
search object Retorna resultados que correspondem ao padrão especificado, sem diferenciar maiúsculas de minúsculas.

Aceita um objeto cujas chaves são nomes de propriedades e cujos valores são strings a serem pesquisadas. Se nenhuma opção adicional for especificada, será realizada uma pesquisa LIKE "%…%".

Propriedades compatíveis: trace_state, span_name, service_name, scope_name, scope_version, status_message.
sortfield string/array Ordena o resultado pelas propriedades especificadas.

Valores possíveis: timestamp, traceid, spanid, parent_spanid, trace_state, span_name, span_kind, service_name, scope_name, scope_version, duration, status_code, status_message.
offset integer Número de registros a ignorar antes de retornar o resultado.
countOutput boolean Esses parâmetros são descritos no comentário de referência.
excludeSearch boolean
limit integer
output query
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valores de retorno

(integer/array) Retorna um dos seguintes:

  • um array de objetos;
  • a quantidade de objetos recuperados, se o parâmetro countOutput tiver sido usado.

Exemplos

Recuperando a hierarquia de spans de um trace

Recupere os quatro primeiros spans do trace "dee625f33cb0994e86c5cd4640e3b09c", ordenados pelo horário de início. A propriedade parent_spanid mostra como os spans estão relacionados: o span raiz não tem um pai, e cada outro span faz referência ao span que o iniciou.

Solicitação:

{
    "jsonrpc": "2.0",
    "method": "apmspan.get",
    "params": {
        "output": ["spanid", "parent_spanid", "service_name", "span_name", "duration", "status_code"],
        "time_from": 1790848800,
        "time_till": 1790852400,
        "traceids": "dee625f33cb0994e86c5cd4640e3b09c",
        "sortfield": "timestamp",
        "sortorder": "ASC",
        "limit": 4
    },
    "id": 1
}

Resposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "spanid": "7c1a9e2f4b6d8a03",
            "parent_spanid": "",
            "service_name": "zabbix-nginx",
            "span_name": "POST /zabbix.php",
            "duration": "1104826531",
            "status_code": "Unset"
        },
        {
            "spanid": "3f8b2c6d1e9a7054",
            "parent_spanid": "7c1a9e2f4b6d8a03",
            "service_name": "zabbix-frontend",
            "span_name": "POST /zabbix.php",
            "duration": "1098230418",
            "status_code": "Unset"
        },
        {
            "spanid": "b3390ad41931ed08",
            "parent_spanid": "3f8b2c6d1e9a7054",
            "service_name": "zabbix-frontend",
            "span_name": "mysqli::real_connect",
            "duration": "36671360",
            "status_code": "Ok"
        },
        {
            "spanid": "e41f7a2c9d5b3086",
            "parent_spanid": "3f8b2c6d1e9a7054",
            "service_name": "zabbix-frontend",
            "span_name": "mysqli_query",
            "duration": "19704118",
            "status_code": "Ok"
        }
    ],
    "id": 1
}

Veja também

Origem

CApmSpan::get() em ui/include/classes/api/services/CApmSpan.php.