Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:
IoT Edge 1.5
Importante
O IoT Edge 1.5 LTS é a versão suportada. O IoT Edge 1.4 LTS está em fim de vida útil a partir de 12 de novembro de 2024. Se tiver uma versão anterior, consulte Atualizar IoT Edge.
Os componentes de tempo de execução do IoT Edge, o hub do IoT Edge e o agente do IoT Edge produzem métricas internas no formato de exposição Prometheus. Aceda a estas métricas remotamente para monitorizar e compreender o estado de funcionamento de um dispositivo IoT Edge.
Use sua própria solução para acessar essas métricas ou use o módulo coletor de métricas, que coleta as métricas internas e as envia para o Azure Monitor ou o Hub IoT do Azure. Para obter mais informações, consulte Coletar e transportar métricas.
As métricas são expostas por padrão na porta 9600 dos módulos edgeHub e edgeAgent (http://edgeHub:9600/metrics e http://edgeAgent:9600/metrics). Eles não são mapeados para o host por padrão.
Acesse as métricas do host ao expor e mapear a porta de métricas no módulo createOptions. O exemplo a seguir mapeia a porta de métricas padrão para a porta 9601 no host:
{
"ExposedPorts": {
"9600/tcp": {}
},
"HostConfig": {
"PortBindings": {
"9600/tcp": [
{
"HostPort": "9601"
}
]
}
}
}
Escolha números de porta de host distintos e únicos ao mapear as endpoints de métricas do edgeHub e do edgeAgent.
Nota
A variável de ambiente httpSettings__enabled não deve ser configurada como false de modo a impedir que as métricas internas fiquem disponíveis para coleta.
As variáveis de ambiente que podem ser usadas para desabilitar métricas são listadas no documento azure/iotedge repo.
Métricas disponíveis
As métricas incluem tags que identificam a natureza da métrica que está sendo coletada. Todas as métricas incluem as seguintes tags:
| Etiqueta | Descrição |
|---|---|
| iothub | O hub com o qual o dispositivo se comunica |
| edge_device | O ID do dispositivo atual |
| número_de_instância | Um GUID que representa o tempo de execução atual. Na reinicialização, todas as métricas são redefinidas. Esse GUID facilita a reconciliação de reinicializações. |
O formato de exposição Prometheus inclui quatro tipos de métricas principais: contador, medidor, histograma e resumo. Para obter mais informações sobre os diferentes tipos de métricas, consulte a documentação de tipos de métricas Prometheus.
Os quantis para o histograma interno e métricas de resumo são 0,1, 0,5, 0,9 e 0,99.
O módulo edgeHub gera as seguintes métricas:
| Nome | Dimensões | Descrição |
|---|---|---|
edgehub_gettwin_total |
source (fonte da operação)id (ID do módulo) |
Tipo: contador Número total de chamadas GetTwin |
edgehub_messages_received_total |
route_output (saída que enviou mensagem)id |
Tipo: contador Número total de mensagens recebidas de clientes |
edgehub_messages_sent_total |
from (fonte da mensagem)to (destino da mensagem)from_route_outputto_route_input (entrada de destino da mensagem)priority (prioridade da mensagem para o destino) |
Tipo: contador Número total de mensagens enviadas aos clientes ou a montante to_route_input está vazio quando to está $upstream |
edgehub_reported_properties_total |
target(meta de atualização)id |
Tipo: contador Total de chamadas de atualizações de propriedade relatadas |
edgehub_message_size_bytes |
id |
Tipo: resumo Tamanho da mensagem dos clientes Os valores podem ser relatados como NaN se nenhuma nova medição fosse relatada por 10 minutos. Para o tipo summary, os contadores _count e _sum correspondentes são emitidos. |
edgehub_gettwin_duration_seconds |
source id |
Tipo: resumo Tempo necessário para obter operações duplas |
edgehub_message_send_duration_seconds |
fromtofrom_route_outputto_route_input |
Tipo: resumo Tempo necessário para enviar uma mensagem |
edgehub_message_process_duration_seconds |
from to priority |
Tipo: resumo Tempo necessário para processar uma mensagem da fila |
edgehub_reported_properties_update_duration_seconds |
targetid |
Tipo: resumo Tempo necessário para atualizar as propriedades relatadas |
edgehub_direct_method_duration_seconds |
from (chamador)to (destinatário) |
Tipo: resumo Tempo necessário para resolver uma mensagem direta |
edgehub_direct_methods_total |
fromto |
Tipo: contador Número total de mensagens diretas enviadas |
edgehub_queue_length |
endpoint (fonte da mensagem)priority (prioridade da fila) |
Tipo: calibre Comprimento atual da fila do edgeHub para uma determinada prioridade |
edgehub_messages_dropped_total |
reason (sem_rota, expiração_ttl)from from_route_output |
Tipo: contador Número total de mensagens removidas por motivo |
edgehub_messages_unack_total |
reason (storage_failure)fromfrom_route_output |
Tipo: contador Número total de mensagens não reconhecidas devido a falha de armazenamento |
edgehub_offline_count_total |
id |
Tipo: contador Número total de vezes que o edgeHub ficou offline |
edgehub_offline_duration_seconds |
id |
Tipo: resumo O hub de borda de tempo estava offline |
edgehub_operation_retry_total |
idoperation (nome da operação) |
Tipo: contador Número total de vezes que as operações edgeHub foram repetidas |
edgehub_client_connect_failed_total |
id reason (não autenticado) |
Tipo: contador Número total de vezes que os clientes não conseguiram se conectar ao edgeHub |
O módulo edgeAgent gera as seguintes métricas:
| Nome | Dimensões | Descrição |
|---|---|---|
edgeAgent_total_time_running_correctly_seconds |
module_name |
Tipo: calibre A quantidade de tempo que o módulo foi especificado na implantação e ficou no estado de execução |
edgeAgent_total_time_expected_running_seconds |
module_name |
Tipo: calibre A quantidade de tempo que o módulo foi especificado na implantação |
edgeAgent_module_start_total |
module_name, module_version |
Tipo: contador Número de vezes que edgeAgent pediu ao docker para iniciar o módulo |
edgeAgent_module_stop_total |
module_name, module_version |
Tipo: contador Número de vezes que edgeAgent pediu ao docker para parar o módulo |
edgeAgent_command_latency_seconds |
command |
Tipo: calibre Quanto tempo o docker levou para executar o comando fornecido. Os comandos possíveis são: criar, atualizar, remover, iniciar, parar e reiniciar |
edgeAgent_iothub_syncs_total |
Tipo: contador Número de vezes que o edgeAgent tentou sincronizar seu gêmeo com o iotHub, com ou sem sucesso. Esse número inclui o Agente solicitando um gêmeo e o Hub notificando de uma atualização gêmea |
|
edgeAgent_unsuccessful_iothub_syncs_total |
Tipo: contador Número de vezes que o edgeAgent não conseguiu sincronizar seu gêmeo com o iotHub. |
|
edgeAgent_deployment_time_seconds |
Tipo: contador O tempo necessário para concluir uma nova implantação após receber uma alteração. |
|
edgeagent_direct_method_invocations_count |
method_name |
Tipo: contador Número de vezes que um método direto edgeAgent interno é chamado, como Ping ou Restart. |
edgeAgent_host_uptime_seconds |
Tipo: calibre Há quanto tempo o anfitrião está ligado |
|
edgeAgent_iotedged_uptime_seconds |
Tipo: calibre Há quanto tempo o iotedged está em execução |
|
edgeAgent_available_disk_space_bytes |
disk_name, disk_filesystem, disk_filetype |
Tipo: calibre Quantidade de espaço restante no disco |
edgeAgent_total_disk_space_bytes |
disk_name, disk_filesystem, disk_filetype |
Tipo: calibre Tamanho do disco |
edgeAgent_used_memory_bytes |
module_name |
Tipo: calibre Quantidade de RAM utilizada por todos os processos |
edgeAgent_total_memory_bytes |
module_name |
Tipo: calibre RAM disponível |
edgeAgent_used_cpu_percent |
module_name |
Tipo: histograma Porcentagem de CPU usada por todos os processos |
edgeAgent_created_pids_total |
module_name |
Tipo: calibre O número de processos ou threads que o contêiner criou |
edgeAgent_total_network_in_bytes |
module_name |
Tipo: calibre O número de bytes recebidos da rede |
edgeAgent_total_network_out_bytes |
module_name |
Tipo: calibre O número de bytes enviados para a rede |
edgeAgent_total_disk_read_bytes |
module_name |
Tipo: calibre O número de bytes lidos do disco |
edgeAgent_total_disk_write_bytes |
module_name |
Tipo: calibre O número de bytes gravados no disco |
edgeAgent_metadata |
edge_agent_version, experimental_features, host_information |
Tipo: calibre Metadados gerais sobre o dispositivo. O valor é sempre 0 e as informações são codificadas nas tags. Observe que experimental_features e host_information são objetos JSON.
host_information
{"OperatingSystemType": "linux", "Architecture": "x86_64", "Version": "1.2.7", "Provisioning": {"Type": "dps.tpm", "DynamicReprovisioning": false, "AlwaysReprovisionOnStartup": false}, "ServerVersion": "20.10.11+azure-3", "KernelVersion": "5.11.0-1027-azure", "OperatingSystem": "Ubuntu 20.04.4 LTS", "NumCpus": 2, "Virtualized": "yes"}parece . Observação ServerVersion é a versão do Docker e Version é a versão do daemon de segurança do IoT Edge. |