CircleCI is a popular platform Continuous integration (CI) and continuous delivery (CD). While its job status reports are already useful, one can do much more insights by debugging it in real time. Here I am sharing a real use-case of debugging a failing job deploing an app 馃檪
Failing job are reported in red and the (most of) errors caught during the execution appear in the terminal. In this case, the environment is unable to locate Python:

The error is not very informative. 馃槷 For more insights, let’s re-run the job in SSH mode:

You will be welcomed with instructions on how to connect via SSH:

CircleCI showing SSH connection string.
Use this instruction to connect to inspect the environment at its failure stage:
mskorski@SHPLC-L0JH Documents % ssh -p 64535 aa.bbb.cc.dd
The authenticity of host '[aa.bbb.cc.dd]:64535 ([aa.bbb.cc.dd]:64535)' can't be established.
ED25519 key fingerprint is SHA256:LsMhHb5fUPLHI9dFdyig4VKw44GTqrA2dkEWT0sZx4k.
Are you sure you want to continue connecting (yes/no)? yes
circleci@bc95bb40fff3:~$ ls project/venv/bin -l
total 300
...
lrwxrwxrwx 1 circleci circleci 7 Aug 1 12:37 python -> python3
lrwxrwxrwx 1 circleci circleci 49 Aug 1 12:37 python3 -> /home/circleci/.pyenv/versions/3.8.13/bin/python3
lrwxrwxrwx 1 circleci circleci 7 Aug 1 12:38 python3.9 -> python3
Bingo! The terminal warns about broken symbolic links:

The solution in this case was to update cache. The issues may be far more complex than that, but being able to debug them live comes to the rescue. 馃槑