Skip to main content

Troubleshooting

The log

Every run writes a log. Its path is printed when the app starts:

bearcad: logging to /tmp/bearcad/bearcad.log

The previous run is kept beside it as bearcad.prev.log, so a crash on startup is still readable after you restart to look.

The log holds everything: what was launched, the GPU in use, every action and every refused one, imports, and any panic. Warnings and notable events also print to the terminal, so running BearCAD from a shell narrates the session as it goes.

BEARCAD_LOG=1 bearcad # the full trace in the terminal too
BEARCAD_LOG_FILE=./run.log bearcad # write the log somewhere else

An action didn't do what you expected

Look for the line naming it. A refused action says why:

[ 4.117] info CreateExtrusion refused: Select a closed profile to extrude

That reason appears in the status bar as well, but the log keeps it after the next action has replaced it.

A McMaster-Carr download didn't arrive

The catalog window keeps its own log, bearcad-mcmaster.log, next to the app's. It records every page it opened and every download it saw:

[ 12.004] info catalog: download started — https://… → /tmp/bearcad-mcmaster/91290A115.STEP
[ 12.310] info catalog: download finished — /tmp/bearcad-mcmaster/91290A115.STEP

The lines to look for:

  • popup handed to the browser — the click opened a new window that didn't look like a file, so it went to your normal browser. If that was the CAD download, say so: the rule for telling a download from a help popup is a judgement about the URL, and it can be corrected.
  • no download line at all — the click never reached the window's download machinery.
  • did not finish — it started and failed part way.
  • nothing recorded where it went — it finished, but the destination was lost. The file is probably in /tmp/bearcad-mcmaster/; File → Import → STEP… will take it from there.
  • sent a … web page instead of a model — the download completed but carried a placeholder rather than CAD, which happens when their model isn't ready yet. Downloading it again usually works.

A part takes a moment to arrive: a few megabytes of BREP is a couple of seconds of reading and tessellating, and the window waits while it happens. The log gives the time it took.

A blank window

The terminal tells you where it got to. A launch that reaches

bearcad: launch: ready

started properly. Eight seconds in, the watchdog gives a verdict either way — how many frames were drawn, or a warning that too few were. Frames being drawn and a window still grey is a presentation fault; no frames is a scheduling one.