4 Troubleshooting

Here are two major classes of problems regarding the Open Build Service:

  1. Normal package build errors

  2. Bugs, resource shortage or config issues caused issues

The first category are errors like missing dependent packages in the build environment, errors during compiling or linking, errors in the build description and so on. Most of them should not happen if the packager does test the build locally before committing it to the OBS. This type of problems is not covered by this chapter.

4.1 General Hints

If you detect unexpected behavior of the open build service, you should follow some rules to locate the problem:

  1. Consult the log files, for the back-end look at /srv/obs/log for the back-end log files and /srv/www/obs/api/log for the front-end log files. See the Log files Section 2.2, “Log Files” for more details.

  2. Consult the normal OS system logs and the kernel log (dmesg) if here are reported system or HW problems.

  3. Check if all services are running on the back-end and front-end. See the OBS Architecture in reference book for details.

  4. Try to find an easy way to reproduce the problem.

  5. To check whether this issue was already reported, see https://github.com/openSUSE/open-build-service.

  6. Use search machines (Google) to find out if others did also run into this problem. If you are lucky, you will find a fix or workaround as well.

  7. If you create a new bug report, include all information to reproduce the problem and the complete error message/error log if here are any.

4.2 Debugging Front-end Problems

If you get unexpected results from submitting commands with the osc tool, you can use the debug feature of the tools to find more information about what happened.

osc debug options

--debugger         jump into the debugger before executing anything
--post-mortem      jump into the debugger in case of errors
-t, --traceback    print call trace in case of errors
-H, --http-debug   debug HTTP traffic (filters some headers)
--http-full-debug  debug HTTP traffic (filters no headers)
-d, --debug        print info useful for debugging

The --debugger and --post-mortem are only suitable for osc developers. If you get an error message from osc, the -t, --traceback can give the developer some more information about the problem. The -H, --http-debug and --http-full-debug options are useful to see the raw answers of OBS API, often this gives a hint what maybe wrong. If you report a problem regarding the osc tool, it may help to include the osc output with additional *--http-debug --traceback options.

Warning
Warning

With --http-full-debug all http headers are included, this may include user data and authentication stuff so review and replace such data with XXXXXXXX or so before you post it on the internet.

Print this page