How to get the error output of the desktop app

Only output.log is available in subdirectories of $HOME/ondemand/data/sys/dashboard/batch_connect/sys/bc_desktop/login/output/

error output is nowhere to be found (and there definitely should be errors in a test case we made)

The goal is that the users can see there own error.log to lower the helpdesk tickets for the easy errors.

@baverhey

Logs for a bc_desktop session will be available here:

/users/$PROJECT/$USER/ondemand/data/sys/dashboard/batch_connect/sys/bc_desktop/vdi-owens/output/$UUID/output.log

If you click on Session ID in your interactive sessions list you will be taken to the logs output for that session.

Those we have: its the location of error log when the desktop session does not start or break down.

The trigger for this request:
A module was beeing loaded that was not available on that specefic cluster and no errors where to be found.

Hi, sorry for the delay. What is your scheduler? For desktops, we set the output path to this log file you’ve identified.

For Torque OOD sets headers.merge!(Join_Path: 'oe') if script.error_path.nil? which joins stdout and stderr if error_path isn’t set (which it isn’t).

Then for Slurm sbatch documentation says “By default both standard output and standard error are directed to the same file” so setting the output path is enough.

It seems like you’re scheduler is like Torque, where we need to pass another flag to get stderr output joined to stdout? Is that about right?

I’m back :wink:
Our scheduler is slurm.

Hi there! It looks like I half answered this.

While you’re able to set script.error_path, you can’t use the staged root where all the other files are.

script:
  error_path: "/some/known/path"

But I just opened this ticket to possibly enable using the same staged_root directory that all the other files are in.

This is available in 2.0.9.

So you could do something like this in the submit.yml.erb.

script:
  error_path: "<%= staged_root %>/error.log"
1 Like