Logging properties: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
m (→‎Source code: Updating links)
m (→‎Related content: added link to newly created jsbsim logging.)
(2 intermediate revisions by 2 users not shown)
Line 18: Line 18:
   <delimiter>,</delimiter>
   <delimiter>,</delimiter>
   <entry>
   <entry>
    <enabled>true</enabled>
     <title>Rudder</title>
     <title>Rudder</title>
     <property>/controls/rudder</property>
     <property>/controls/rudder</property>
   </entry>
   </entry>
   <entry>
   <entry>
    <enabled>true</enabled><ref></ref>
     <title>Ailerons</title>
     <title>Ailerons</title>
     <property>/controls/aileron</property>
     <property>/controls/aileron</property>
Line 51: Line 53:
   22097,-0.000000,-0.168000
   22097,-0.000000,-0.168000
</pre>
</pre>
The easiest way for an end-user to define logs is to put the log configuration in an XML file (usually under the [[$FG_HOME]] directory), then refer to it using the --config option, like
<pre>fgfs --config=log-config.xml</pre>
This option can be passed via the command line or in the options settings of your favourite launcher.


== Related content ==
== Related content ==
=== Wiki articles ===
=== Wiki articles ===
* [[Generic protocol]] – ''Alternative and more flexible way to log or even stream data.''
* [[Generic protocol]] – ''Alternative and more flexible way to log or even stream data.''
* [[JSBSim Logging]] - ''Alternative way to log if the aircraft is JSBSim based.''


=== Readme files ===
=== Readme files ===

Revision as of 18:33, 19 October 2016

FlightGear has the ability to produce multiple files logging properties. Both the properties and the interval between the records are user selectable.

More than one log file can be configured in the PropertyList file setting up what properties to log.

Simple example

Here is a simple example that logs the rudder and aileron positions to the file steering.csv every second or so:

<?xml version="1.0" encoding="UTF-8"?>
<PropertyList>
 <logging>
  <log>
   <filename>steering.csv</filename>
   <enabled>true</enabled>
   <interval-ms>1000</interval-ms>
   <delimiter>,</delimiter>
   <entry>
    <enabled>true</enabled>
    <title>Rudder</title>
    <property>/controls/rudder</property>
   </entry>
   <entry>
    <enabled>true</enabled><ref></ref>
    <title>Ailerons</title>
    <property>/controls/aileron</property>
   </entry>
  </log>
 </logging>
</PropertyList>

Here is some sample output:

  Time,Rudder,Ailerons
  6522,0.000000,0.000000
  7668,-0.000000,0.000000
  8702,-0.000000,0.000000
  9705,-0.000000,0.000000
  10784,-0.000000,0.000000
  11792,-0.000000,0.000000
  12808,-0.000000,-0.210000
  13826,-0.000000,-0.344000
  14881,-0.000000,-0.066000
  15901,-0.000000,-0.806000
  16943,-0.000000,-0.936000
  17965,-0.000000,-0.534000
  19013,-0.000000,-0.294000
  20044,-0.000000,0.270000
  21090,-0.000000,-1.000000
  22097,-0.000000,-0.168000

The easiest way for an end-user to define logs is to put the log configuration in an XML file (usually under the $FG_HOME directory), then refer to it using the --config option, like

fgfs --config=log-config.xml

This option can be passed via the command line or in the options settings of your favourite launcher.

Related content

Wiki articles

  • Generic protocolAlternative and more flexible way to log or even stream data.
  • JSBSim Logging - Alternative way to log if the aircraft is JSBSim based.

Readme files

Source code