Apache Ant TasksRecordRecordDescriptionA recorder is a listener to the current build process that records theoutput to a file. Several recorders can exist at the same time. Each recorder isassociated with a file. The filename is used as a unique identifier forthe recorders. The first call to the recorder task with an unused filenamewill create a recorder (using the parameters provided) and add it to thelisteners of the build. All subsequent calls to the recorder task usingthis filename will modify that recorders state (recording or not) or otherproperties (like logging level). Some technical issues: the file's print stream is flushed for "finished"events (buildFinished, targetFinished and taskFinished), and is closed ona buildFinished event. Parameters Attribute | Description | Required | name | The name of the file this logger is associated with. | yes | action | This tells the logger what to do: should it start recording or stop? The first time that the recorder task is called for this logfile, and if this attribute is not provided, then the default for this attribute is "start". If this attribute is not provided on subsequent calls, then the state remains as previous. [Values = {start|stop}, Default = no state change] | no | append | Should the recorder append to a file, or create a new one? This is only applicable the first time this task is called for this file. [Values = {yes|no}, Default=no] | no | emacsmode | Removes [task] banners like Apache Ant's -emacs command line switch if set to true. | no, default is false | loglevel | At what logging level should this recorder instance record to? This is not a once only parameter (like append is) -- you can increase or decrease the logging level as the build process continues. [Values= {error|warn|info|verbose|debug}, Default = no change] | no | ExamplesThe following build.xml snippet is an example of how to use the recorderto record just the <javac> task: ... <compile > <record name="log.txt" action="start"/> <javac ... <record name="log.txt" action="stop"/> <compile/> ... The following two calls to <record> set up tworecorders: one to file "records-simple.log" at logging level info (the default) and one to file "ISO.log" using logging level ofverbose . ... <record name="records-simple.log"/> <record name="ISO.log" loglevel="verbose"/> ... NotesThere is some functionality that I would like to be able to add in thefuture. They include things like the following: Attribute | Description | Required | listener | A classname of a build listener to use from this point on instead of the default listener. | no | includetarget | A comma-separated list of targets to automatically record. If this value is "all", then all targets are recorded. [Default = all] | no | excludetarget | no | includetask | A comma-separated list of task to automatically record or not. This could be difficult as it could conflict with the includetarget/excludetarget . (e.g.: includetarget="compile" exlcudetask="javac" , what should happen?) | no | excludetask | no | action | add greater flexibility to the action attribute. Things like close to close the print stream. | no | | | | |