Categories

Versions

Logs and General Debugging

Working with edge devices can be tricky due to their inherent remote status. We have designed the software for Altair® AI Edge™ devices to allow users to monitor and debug device activity in a variety of ways.

Logs in AI Studio

We strongly advise opening and viewing the Log panel when executing operators from the AI Edge toolbox. To do so, go to View → Show Panel → Log.

Logs on AI Edge devices

To view log entries on an AI Edge device, you can either use the Get Logs (IoT) operator in AI Studio, or you can access them via a k9s tunnel (see below).

Remote access into an AI Edge device (FOR ADVANCED USERS)

There are ways to get either direct root access or access to the kubernetes cluster from the command line via kubectl. It requires installing and some knowledge of kubernetes.

Links to install kubectl:

Creating a kubeconfig yaml file

In order to remote into an AI Edge device with a kubeconfig yaml file, you must first ensure the ase-core-tunnel app is installed and running. It is not installed by default.

  1. In IoT Studio, navigate to AnythingDB → Retrieve kubeconfig
  2. Enter an arbitrary string for correlationid e.g. 234ryqed
  3. Format → yaml.
  4. Click Run.
  5. Scroll down to Retrieve kubeconfig is done
  6. Copy 'response' part of json in Event Data to editor
  7. Save response (should start with 'apiVersion' and end with 'current-context: ....') as tunnel.yaml.

Note: the response will come with escaped carriage returns i.e. \n. These will need to be removed, and the entire yaml file will need to be re-formated properly, prior to saving your tunnel.yaml file.

Properly formatted tunnel.yaml file:

apiVersion: v1
kind: Config

clusters:
- name: "name-01abcdefghijklmnopqrstuvwx-01ABCDEFGHIJKLOMOPQRSTUVWX"
  cluster:
      server: "https://tnl.swx.altairone.com:443/01ABCDEFGHIJKLOMOPQRSTUVWX"

users:
- name: "name-01abcdefghijklmnopqrstuvwx-01ABCDEFGHIJKLOMOPQRSTUVWX"
  user:
    token: "eyJhbGciOiJSUzI1NiIsImtpZCI6AbcDefGhiJktSk9CYU15WmUzb2x2YjBIVl8zenpRQjBiQnV5UE5OWDd2ZUlkaVUifQ.eyJpc3MiOiAbcDefGhm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJlY3AiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlY3JldC5uYW1lIjoic21hcnR3b3Jrcy5pb3QuZXh0ZXJuYWwtdG9rZW4uMTcxNjA3NjgwMCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJtYW5hZ2VtZW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiYjg0MWEwZjYtYWYwMy00ZTFiLThiYjEtNjhhY2UyYjRjZAbcDefHdhRtxxeYTiIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OmVjcDptYW5hZ2VtZW50In0.GAch05wymqoPfpr1VDSzz03kVZdPKgWhDq5M48DW-TzI4nfyZPgEPI831VLIKEJJQrOJMIInKKnZ3Ckw7enBKany1rykpwyDBlpgK48pE_dLPm8wSpHJLBvvSMCfIgSOQgIzEkeziAPQngbgbLz1hw3Qmf6P-wGQzJz2Jr2sCABH89l1xHL8MtCULiTO6o5VWn7E-sg2NcGyy4NRlaeOWM5LRSfn1Bbe2kP3y2epgeNvOF3Z_b3_96L5zp3R7FZ9iSy6RtQE56N3izeLYkRIJiiN0C1aDpBO24Hb2k0Gw0LV6Z_uMHRi5ZL-Jui7gESFqJkhQeWM1wrWMM-WdbPMCg"

contexts:
  - name: "name-01abcdefghijklmnopqrstuvwx-01ABCDEFGHIJKLOMOPQRSTUVWX"
    context:
      user: "name-01abcdefghijklmnopqrstuvwx-01ABCDEFGHIJKLOMOPQRSTUVWX"
      cluster: "name-01abcdefghijklmnopqrstuvwx-01ABCDEFGHIJKLOMOPQRSTUVWX"
      namespace: "ecp"

current-context: "name-01abcdefghijklmnopqrstuvwx-01ABCDEFGHIJKLOMOPQRSTUVWX"

WARNING! This tunnel.yaml is a root key to tunnel into your device. Treat it with care!

k9s

One of the best ways to see what is going on in your k3s cluster is to use a command line tool called k9s. After installing k9s on your local machine, follow these steps to get an instance running in your CLI.

Once k9s is installed, you can use your tunnel.yaml file to launch k9s with your device credentials:

$ KUBECONFIG=tunnel.yaml k9s