Azure / Azure/iotedge

iotedge check with confusing results

Open
#6,901 5 comments 0 reactions 0 assignees View on GitHub
customer-reported iotedge no-issue-activity
Dominant language
C#
Stars
1.5k
Forks
473
Avg merge
2d 17h
Merged PRs (30d)
7

Description

## Expected Behavior
When running the `iotedge check --verbose` I want to have some details WHY checks were skipped.

It would be nice when running `iotedge check-list` is executed that checks which are required for connectivity checks are "marked" somehow.

## Current Behavior
Check without `--verbose`
```
check_iotedge_cmd="iotedge check --iothub-hostname prodIotHubNtuity.azure-devices.net --dont-run
keyd-config-well-formed
certd-config-well-formed
tpmd-config-well-formed
configs-up-to-date
hostname
aziot-version
host-local-time
identity-certificate-expiry
est-identity-and-bootstrap-certificate-expiry
local-ca-certificate-expiry
certs-preloaded
keyd-running
certd-running
tpmd-running
identityd-running
certs-read
key-pairs-read
est-server-https
certs-match-private-keys
host-connect-iothub-mqtt

config-up-to-date
container-engine-uri
parent_hostname
container-resolve-parent-hostname
connect-management-uri
aziot-edge-version
container-local-time
container-engine-dns
container-engine-ipv6
container-engine-logrotate
edge-agent-storage-mounted-from-host
edge-hub-storage-mounted-from-host
check-agent-image
proxy-settings

container-default-connect-upstream-amqp
container-default-connect-upstream-https
container-default-connect-upstream-mqtt
container-connect-upstream-mqtt
"
eval $check_iotedge_cmd
```
Result:
```
Configuration checks (aziot-identity-service)
---------------------------------------------
√ identityd configuration is well-formed - OK

Connectivity checks (aziot-identity-service)
--------------------------------------------
√ host can connect to and perform TLS handshake with iothub AMQP port - OK
√ host can connect to and perform TLS handshake with iothub HTTPS / WebSockets port - OK
√ host can connect to and perform TLS handshake with DPS endpoint - OK

Configuration checks
--------------------
√ aziot-edged configuration is well-formed - OK

Connectivity checks
-------------------
5 check(s) succeeded.
2 check(s) were skipped due to errors from other checks. Re-run with --verbose for more details.
```

**Check with `--verbose` delivers exactly the same result**

## Steps to Reproduce
Provide a detailed set of steps to reproduce the bug.
1. Execute command shown in "current behavior"

## Context (Environment)

### Output of `iotedge check`

I found out that if special `--dont-run` are missing, the results are quite confusing. E.g. if I remove `container-engine-uri` then everything is clear.

### Device Information
* Host OS [e.g. Ubuntu 18.04, Windows Server IoT 2019]: CentOS 8 (RHEL 8)
* Architecture [e.g. amd64, arm32, arm64]: amd64
* Container OS [e.g. Linux containers, Windows containers]: Linux containers, of course

### Runtime Versions
* aziot-edged [run `iotedge version`]: 1.4.3
* Edge Agent [image tag (e.g. 1.0.0)]: 1.4.7
* Edge Hub [image tag (e.g. 1.0.0)]: 1.4.7
* Docker/Moby [run `docker version`]: 20.10.11+azure-2

Note: when using Windows containers on Windows, run `docker -H npipe:////./pipe/iotedge_moby_engine version` instead

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.