Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: IoT Edge 1.5
Importante
O IoT Edge 1.5 LTS é a versão com suporte. O IoT Edge 1.4 LTS atingirá o fim da vida útil em 12 de novembro de 2024. Se você estiver em uma versão anterior, confira Atualizar o IoT Edge.
Os componentes de runtime do IoT Edge, o hub do IoT Edge e o agente do IoT Edge produzem métricas internas no formato de exposição do Prometheus. Acesse essas métricas remotamente para monitorar e entender a integridade de um dispositivo do IoT Edge.
Use sua própria solução para acessar essas métricas ou usar 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, confira 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 expondo e mapeando a porta de métricas no createOptions
do módulo. 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 diferentes e exclusivos ao mapear os pontos de extremidade de métricas do edgeHub e do edgeAgent.
Observação
A variável de ambiente httpSettings__enabled
não deve ser atribuída ao valor false
para que as métricas internas estejam disponíveis para a coleta.
As variáveis de ambiente que podem ser usadas para desabilitar as métricas são listadas no documento do repositório azure/iotedge.
Métricas disponíveis
As métricas incluem marcas que identificam a natureza da métrica que está sendo coletada. Todas as métricas incluem as seguintes tags:
Marca | Descrição |
---|---|
iothub | O hub com o qual o dispositivo se comunica |
edge_device | A ID do dispositivo atual |
instance_number | Um GUID representando o runtime atual. Na reinicialização, todas as métricas são redefinidas. Esse GUID torna mais fácil reconciliar as reinicializações. |
O formato de exposição do Prometheus inclui quatro tipos de métricas principais: contador, medidor, histograma e resumo. Para obter mais informações sobre os diferentes tipos de métrica, confira a documentação dos tipos de métrica do Prometheus.
Os quantis para o histograma integrado e as 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 (origem 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 a mensagem)id |
Tipo: contador Número total de mensagens recebidas dos clientes |
edgehub_messages_sent_total |
from (origem da mensagem)to (destino da mensagem)from_route_output to_route_input (entrada do destino da mensagem)priority (prioridade da mensagem para o destino) |
Tipo: contador Número total de mensagens enviadas aos clientes ou upstream to_route_input está vazio quando o to é $upstream |
edgehub_reported_properties_total |
target (destino 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 medida fosse relatada por 10 minutos. Para o tipo summary , são emitidos os contadores _count e _sum correspondentes. |
edgehub_gettwin_duration_seconds |
source id |
Tipo: resumo Tempo gasto para operações get twin |
edgehub_message_send_duration_seconds |
from to from_route_output to_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 |
target id |
Tipo: resumo Tempo necessário para atualizar as propriedades relatadas |
edgehub_direct_method_duration_seconds |
from (chamador)to (receptor) |
Tipo: resumo Tempo necessário para resolver uma mensagem direta |
edgehub_direct_methods_total |
from to |
Tipo: contador Número total de mensagens diretas enviadas |
edgehub_queue_length |
endpoint (origem da mensagem)priority (prioridade da fila) |
Tipo: medidor Comprimento atual da fila do edgeHub para determinada prioridade |
edgehub_messages_dropped_total |
reason (no_route, ttl_expiry)from from_route_output |
Tipo: contador Número total de mensagens removidas por causa do motivo |
edgehub_messages_unack_total |
reason (falha de armazenamento)from from_route_output |
Tipo: contador Número total de mensagens não confirmadas por 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 Tempo que o edgeHub ficou offline |
edgehub_operation_retry_total |
id operation (nome da operação) |
Tipo: contador Número total de vezes que as operações do 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: medidor A quantidade de tempo que o módulo foi especificado na implantação e estava no estado em execução |
edgeAgent_total_time_expected_running_seconds |
module_name |
Tipo: medidor 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 o edgeAgent pediu ao Docker para iniciar o módulo |
edgeAgent_module_stop_total |
module_name , module_version |
Tipo: contador Número de vezes que o edgeAgent pediu ao Docker para interromper o módulo |
edgeAgent_command_latency_seconds |
command |
Tipo: medidor 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 e sem sucesso. Esse número inclui tanto as solicitações de gêmeo do agente quanto as notificação do Hub sobre atualizações do gêmeo |
|
edgeAgent_unsuccessful_iothub_syncs_total |
Tipo: contador Número de vezes que o edgeAgent falhou ao sincronizar seu gêmeo com o iotHub. |
|
edgeAgent_deployment_time_seconds |
Tipo: contador A quantidade de tempo que leva para concluir uma nova implantação depois de receber uma alteração. |
|
edgeagent_direct_method_invocations_count |
method_name |
Tipo: contador Número de vezes que um método direto interno do edgeAgent, como Ping ou Reiniciar, é chamado. |
edgeAgent_host_uptime_seconds |
Tipo: medidor Há quanto tempo o host está ativado |
|
edgeAgent_iotedged_uptime_seconds |
Tipo: medidor Há quanto tempo o iotedged está em execução |
|
edgeAgent_available_disk_space_bytes |
disk_name , disk_filesystem , disk_filetype |
Tipo: medidor Quantidade de espaço restante no disco |
edgeAgent_total_disk_space_bytes |
disk_name , disk_filesystem , disk_filetype |
Tipo: medidor Tamanho do disco |
edgeAgent_used_memory_bytes |
module_name |
Tipo: medidor Quantidade de RAM usada por todos os processos |
edgeAgent_total_memory_bytes |
module_name |
Tipo: medidor RAM disponível |
edgeAgent_used_cpu_percent |
module_name |
Tipo: histograma Percentual de CPU usada por todos os processos |
edgeAgent_created_pids_total |
module_name |
Tipo: medidor Número de processos ou threads que o contêiner criou |
edgeAgent_total_network_in_bytes |
module_name |
Tipo: medidor Número de bytes recebidos da rede |
edgeAgent_total_network_out_bytes |
module_name |
Tipo: medidor Número de bytes enviados para a rede |
edgeAgent_total_disk_read_bytes |
module_name |
Tipo: medidor Número de bytes lidos do disco |
edgeAgent_total_disk_write_bytes |
module_name |
Tipo: medidor Número de bytes gravados no disco |
edgeAgent_metadata |
edge_agent_version , experimental_features , host_information |
Tipo: medidor Metadados gerais sobre o dispositivo. O valor é sempre 0 e as informações são codificadas nas tags. Observe isso experimental_features e host_information são objetos JSON. host_information se parece com {"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"} . Observe que ServerVersion é a versão do Docker e Version é a versão do daemon de segurança do IoT Edge. |