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
countOutputtiver 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.
{
"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.