oxidecomputer / oxidecomputer/console

Want easier way to copy serial console output from a machine in a reboot loop

Open
#1,489 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
228
Forks
22
Avg merge
19h 42m
Merged PRs (30d)
32

Description

I have a VM which is failing to start, crashing after the OS is loaded.
Copying the error message using the console serial console was tricky because the console clears when the VM resets and I could not scroll back.

The VM is wilma which is in the andy project in the google silo, and it is currently rebooting continuously. The text I wanted to capture was:

OmniOS r151046 Version omnios-r151046-82ebda23c9 64-bit
Copyright (c) 2012-2017 OmniTI Computer Consulting, Inc.
Copyright (c) 2017-2023 OmniOS Community Edition (OmniOSce) Association.
NOTICE: Performing full ZFS device scan!
NOTICE: Cannot read the pool label from '/pci@0,0/pci1af4,2@4/blkdev@0,0:b'
NOTICE: spa_import_rootpool: error 5
Cannot mount root on /pci@0,0/pci1af4,2@4/blkdev@0,0:b fstype zfs

panic[cpu0]/thread=fffffffffbca07a0: vfs_mountroot: cannot mount root

Warning - stack not written to the dump buffer
fffffffffbca6650 fffffffffbaf0087 ()
fffffffffbca6690 genunix:main+137 ()
fffffffffbca66a0 unix:_locore_start+88 ()

skipping system dump - no dump device configured
rebooting...

Presumably the CLI serial console will make this easier, but is there any improvement we can make on the console side? Even a pause button would be a big help here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file or test is named. Start by locating the serial console view and how it handles output when the VM resets; compare the web console behavior with the reported reboot loop. Done means the console provides a reliable way to retain or copy output, with behavior covered by the relevant tests if they exist.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.