Como utilizar a API de vScope
A API vScope permite-lhe utilizar os dados de monitorização nas suas aplicações
A API vScope permite-lhe utilizar os dados de monitorização nas suas aplicações
Última atualização: 28/07/2020
A OVHcloud coloca à sua disposição uma ferramenta de supervisão e monitorização das suas máquinas virtuais e da sua infraestrutura, designada por vScope.
Trata-se de uma página Internet onde estão reunidas todas as informações úteis relativas à utilização dos seus recursos.
Estas informações encontram-se também disponíveis através da APIv6 e da API Metrics.
Este guia descreve a utilização destas APIs.
A ferramenta vScope disponibiliza dois tipos de informações:
Os dados live são os dados disponíveis a partir da página principal da interface vScope.
Pode recuperar estes dados live para os seguintes componentes:
A utilização da API faz-se através destas três chamadas APIv6:
Para recolher e utilizar os dados históricos (Graphs), usamos o produto Metrics Data Platforms.
Através dos protocolos Opentsdb ou WARP10, vai poder recuperar os seus dados sob a forma de pontos. Poderá explorar estes pontos através da sua aplicação ou apresentá-los diretamente em função do resultado pretendido.
Este artigo diz respeito à utilização do protocolo Opentsdb para uma apresentação bruta dos dados (sem resultado gráfico).
Para poder utilizar Metrics Data Platforms, terá de obter um token de leitura. Com a nova versão do vScope, cada utilizador da infraestrutura tem um token de leitura.
Para o utilizador pretendido, utilize a chamada APIv6 seguinte para recuperar o token de leitura:
O seu token encontra-se no campo token do resultado.
{
"warpEndpoint": "https://warp10.gra1-ovh.metrics.ovh.net",
"token": "XXXXXXXXXXXX_XXXXXXXXXXXZZZZZZZZZZZ_YYYYYYYYYYYYYY-XXXXXXXXX",
"opentsdbEndpoint": "https://opentsdb.gra1-ovh.metrics.ovh.net"
}
Para cada tipo de componente, está disponível uma lista de métricas que precisa de um conjunto de parâmetros (também chamado "etiquetas") muito precisos.
Métricas | Descrição | Etiquetas |
---|---|---|
vscope.filer.datastore.diskspace.used | Utilização do filer em kB | datacenter : pcc-37-187-228-180_datacenter869, datastore: pcc-000443 |
Métricas | Descrição | Etiquetas |
---|---|---|
vscope.host.cpu.usage.perc | Utilização do processador do host em percentagem | - datacenter: pcc-37-187-228-180_datacenter869, - host: 172.17.86.51 |
vscope.host.mem.usage.perc | Utilização da memória do host em percentagem | - datacenter: pcc-37-187-228-180_datacenter869, - host: 172.17.86.51 |
vscope.host.net.tx | Utilização da rede do host em emissão | - datacenter: pcc-37-187-228-180_datacenter869, - host: 172.17.86.51 - nicname: vmnic0/vmnic1/vmnic2/vmnic3 |
vscope.host.net.rx | Utilização da rede do host em receção | - datacenter: pcc-37-187-228-180_datacenter869, - host: 172.17.86.51 - nicname: vmnic0/vmnic1/vmnic2/vmnic3 |
vscope.host.net.packetstx | Número de packs de rede transmitidos do host | - datacenter: pcc-37-187-228-180_datacenter869, - host: 172.17.86.51 - nicname: vmnic0/vmnic1/vmnic2/vmnic3 |
vscope.host.net.packetsrx | Número de packs de rede recebidos do host | - datacenter: pcc-37-187-228-180_datacenter869, - host: 172.17.86.51 - nicname: vmnic0/vmnic1/vmnic2/vmnic3 |
Métricas | Descrição | Etiquetas |
---|---|---|
vscope.vm.cpu.usage.perc | Utilização do processador da vm em percentagem | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.mem.usage.perc | Utilização da memória da vm em percentagem | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.cpu.ready | CPU Ready da vm em milissegundos | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.net.rx | Utilização da rede da vm em receção | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.net.tx | Utilização da rede da vm em transmissão | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.net.packetsrx | Número de packs de rede recebidos da vm | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.net.packetstx | Número de packs de rede transmitidos da vm | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.disk.io.read | Número de IO em leitura por segundo da vm | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.disk.io.write | Número de IO em escrita por segundo da vm | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.disk.bandwidth.read | Largura de banda do disco da vm em leitura | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.disk.bandwidth.write | Largura de banda do disco da vm em escrita | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.disk.latency.read | Latência do disco da vm em leitura | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
vscope.vm.disk.latency.write | Latência do disco da vm em escrita | - datacenter: pcc-37-187-228-180_datacenter869, - vm: vm-01254 |
Agora que recuperou o seu token, o seu endpoint e que tem a lista das métricas, vai recuperar os dados de utilização da memória de um host ao longo de 1 dia.
Em seguida, encontre um exemplo de pedido.
curl -XPOST https://read:XXXXXXXXXXXX_XXXXXXXXXXXZZZZZZZZZZZ_YYYYYYYYYYYYYY-XXXXXXXXX@opentsdb.gra1-ovh.metrics.ovh.net/api/query
-d '{
"start":1564407950,
"queries":[
{
"metric":"vscope.host.mem.usage.perc",
"aggregator":"sum",
"downsample":"20m-max-zero",
"tags": {
"datacenter":"pcc-37-187-228-180_datacenter869",
"host":"172.17.86.51"
}
}
]
}'
Explicação dos vários campos utilizados:
Podem também ser fornecidos outros parâmetros. Consulte a documentação da api OpenTSDB para mais pormenores.
Receberá então um json com o resumo do pedido, bem como os carimbos de hora associados ao respetivo valor no campo dps. Por exemplo:
[
{
"metric":"vscope.host.mem.usage.perc",
"tags":{
"datacenter":"pcc-37-187-228-180_datacenter869",
"env":"prod",
"host":"172.17.86.51",
"servicename":"pcc-37-187-228-180",
"servicetype":"vscope"
},
"query":{
"index":0
},
"aggregateTags":[],
"dps":{
"1564409391":4.38,
"1564410591":4.35,
"1564411791":4.37,
"1564412991":4.38,
"1564414191":4.35,
"1564415391":4.38,
"1564416591":4.35,
"1564417791":4.36,
"1564418991":4.36,
"1564420191":4.37,
"1564421391":4.37,
"1564422591":4.37,
"1564423791":4.37,
"1564424991":4.38,
"1564426191":4.36,
"1564427391":4.35,
"1564428591":4.37,
"1564429791":4.36,
"1564430991":4.38,
"1564432191":4.35,
"1564433391":4.37,
"1564434591":4.36,
"1564435791":4.37,
"1564436991":4.37,
"1564438191":4.37,
"1564439391":4.38,
"1564440591":4.36,
"1564441791":4.36,
"1564442991":4.37,
"1564444191":4.37,
"1564445391":4.35,
"1564446591":4.36,
"1564447791":4.36,
"1564448991":4.36,
"1564450191":4.35,
"1564451391":4.37,
"1564452591":4.37,
"1564453791":4.35,
"1564454991":4.36,
"1564456191":4.37,
"1564457391":4.37,
"1564458591":4.36,
"1564459791":4.37,
"1564460991":4.34,
"1564462191":4.36,
"1564463391":4.34,
"1564464591":4.37,
"1564465791":4.34,
"1564466991":4.37,
"1564468191":4.34,
"1564469391":4.36,
"1564470591":4.36,
"1564471791":4.36,
"1564472991":4.37,
"1564474191":4.37,
"1564475391":4.36,
"1564476591":4.35,
"1564477791":4.36,
"1564478991":4.35,
"1564480191":4.35,
"1564481391":4.37,
"1564482591":4.36,
"1564483791":4.34,
"1564484991":4.37,
"1564486191":4.38,
"1564487391":4.35,
"1564488591":4.34,
"1564489791":4.36,
"1564490991":4.35,
"1564492191":4.36,
"1564493391":4.36,
"1564494591":4.36
}
}
]
Para mais pormenores sobre os pedidos OpenTSDB, pode consultar a seguinte documentação: OpenTSDB api query
Fale com a nossa comunidade de utilizadores em https://community.ovh.com/.
Não hesite em propor-nos sugestões de melhoria para fazer evoluir este manual.
Imagens, conteúdo, estrutura... Não hesite em dizer-nos porquê para evoluirmos em conjunto!
Os seus pedidos de assistência não serão tratados através deste formulário. Para isso, utilize o formulário "Criar um ticket" .
Obrigado. A sua mensagem foi recebida com sucesso.
Aceda ao seu espaço comunitário. Coloque as suas questões, procure informações e interaja com outros membros do OVHcloud Community.
Discuss with the OVHcloud community