Commonly used debugging tools

107 bytes added, 20:49, 15 April 2020
Minor copy editing; +-heading levels; +- Updating link to debug level source file and making it a footnote; +- Minor rewrite of the fgfs.log section; +Reference section
There are some relatively simple but '''commonly used debugging tools''' that might answer questions of for example why your installation of FlightGear will not run properly or at all, why an aircraft might have problems or why flying in a certain area always cause FlightGear crashes.
The more useful of those tool tools are the console window (also known as the "black box" or confusingly the "command line"), the <code>fgfs.log</code> file and the property browser.
There are of course times when these will not do, and sometimes one would have to compile FlightGear from source ''and'' add some additional debugging features to find some bugs.
== Console and startup log output ===== Debug level setting levels ===
Before we go any further we should mention the ''debug level'' setting (also known as ''log level''). When FlightGear runs it will output information on various things. As a default only things that are expected to cause troubles are output, but by setting a higher debug level more information will be shown. At the highest debug level one can expect FlightGear to run slow due to all the debug output.
=== Debug levels ===There are five debug levels:<ref>That are relevant for the console window and log file. See {{simgear source |path=/simgear/debug/debug_types.h |commit=2ab0122124169b0d6ac900423e76d2437ed22e98 |line=47}}.</ref>
; Bulk: Will output very frequent messages. Using this setting might slow down FlightGear a lot, but might show problems not otherwise found.
; Debug: Will output less frequent debug messages.
; Alert: Will output messages about very possibly impeding problems. This is the default level.
==== Setting the debug level ========= FGRun =====
In FGRun go to the last page click {{key press|Advanced...}} then, in the list to the left, click "Debug" and then chose the desired debug level in the list.
===== Command line =====
{{note|Debug levels must be lowercase. For example <code>debug</code>, not <code><s>&ensp;Debug&ensp;</s></code>.}}
Add <code>--log-level=''debug level''</code> to your command line.
=== The console window ===
Before FlightGear 2.6 this was always opened in a separate window when starting FlightGear through the [[FGRun]] wizard, but these days it is normally hidden and can be shown by ticking a checkbox, "Show command line".
=== fgfs.log ===
The startup log file contains nearly the same information that is output on the console.
The goal purpose of adding the log file was is to capture some debugging output in a way that is robust for users, i.e in essence that just workswork, and works ‘historically’, ithat capture errors that happen.e That is in essence useful when a problem occurs occur since it was already enabled.  The level is fixed at INFO defaults to ''info'' because a lower level wouldn’t would not contain enough detail for debugging, but a higher level (SG_DEBUG) , for example ''debug'', the files would be huge for a long FG FlightGear session. This is my decision can of course and it can be changed if people are happy with 100MB+ text files bigger than 100 MB in their [[$FG_HOME]]. Or we add a new option to set the file-log-level, but again the intention was for this feature to be as automatic as possible.<ref>{{cite web
|url =
|title = <nowiki> Re: [Flightgear-devel] fgfs.log </nowiki>
 ==== Finding fgfs.log ====
; Mac: <code>~/Library/Application Support/FlightGear/fgfs.log</code>
; Windows: <code>C:\Users\''user name''\AppData\Roaming\\fgfs.log</code>
{{main article|Property browser}}
The property browser is a tool useful for many purposes. It might for example tell if a property is tied and can not be written to.
== References ==
== Related content ==
=== Wiki articles ===
* [[Command line]]
* [[Property browser]]
* [[Howto:Understand console output]]
* [[:Category:Troubleshooting]]
== External links ==
* [ The debug levels as mentioned in the source code]
[[Category:Aircraft enhancement]]