|
During test execution, Fuego collects several different logs.
|
{{TableOfContents}}During test execution, Fuego collects several different logs.
|
|
These represent different aspects of the system, and are used for differentpurposes.
|
These represent different aspects of the system, and are used for differentpurposes.
|
|
FIXTHIS - finish documenting log files on the Log files page.Specifically, document parsed logs, pn logs, reference logs, and logfile locations in the container.
|
FIXTHIS - finish documenting log files on the Log files page.Specifically, document parsed logs, pn logs, reference logs, and logfile locations in the container.
|
|
Here are the main logs collected or generated during a test: * console log * devlog * syslog * test log * parsed log
|
Here are the main logs collected or generated during a test: * '''console log''' * '''devlog''' * '''syslog''' * '''test log''' * '''parsed log'''
|
|
The following files are also used during a test: * pn log * reference log
|
The following files are also used during a test: * '''pn log''' * '''reference log'''
|
|
|
= console log =The console log is collected by Jenkins during the entire execution ofthe test. It is dominated by the invocation of the test base script,which is executed as a shell script, with the 'set -x' parameter set.
|
|
During execution of the base script, several "source" statementsare encountered, nesting the invocation of scripts multiple times.The number of '+' signs preceding a line in the console log indicatesthe depth (or invocation nesting level) for that line, in the shellexecution.
|
During execution of the base script, several "source" statementsare encountered, nesting the invocation of scripts multiple times.The number of '+' signs preceding a line in the console log indicatesthe depth (or invocation nesting level) for that line, in the shellexecution.
|
|
There are "phase" messages added to the log during the test, which can helpidentify which part of the test a particular sequence is in. This can help you debug what part of a test (pre_test, build, deploy, run, post_test) is failing, if any.
|
There are "phase" messages added to the log during the test, which can helpidentify which part of the test a particular sequence is in. This can help you debug what part of a test (pre_test, build, deploy, run, post_test) is failing, if any.
|
|
The second major part of the script is the post_test phase, which isalso executed as a shell script fragment, utilizing the prolog generatedpreviously, and documenting the gather of logs and determination offinal test result.
|
The second major part of the script is the post_test phase, which isalso executed as a shell script fragment, utilizing the prolog generatedpreviously, and documenting the gather of logs and determination offinal test result.
|
|
The location of the console log for a test run is at: /home/jenkins/fuego/jobs/<testname>/builds/<testnum>/log
|
The location of the console log for a test run is at: ''/home/jenkins/fuego/jobs/<testname>/builds/<testnum>/log''
|
|
report_devlog to add a line to thislog.
|
= devlog =This is a summarized list of operations performed during the executionof a test. These entries are created when internal routines usethe function [[function_report_devlog|report_devlog]] to add a line to thislog.
|
|
The location of the devlog for a test run is in a file: /userdata/logs/<testname>/devlogs/<target>.<timestamp>.<testnum>.txt
|
The location of the devlog for a test run is in a file: ''/userdata/logs/<testname>/devlogs/<target>.<timestamp>.<testnum>.txt''
|
|
|
= syslog =The syslog records the messages from the target system's log. There are twoof these recorded, one during the pre_test (called the "before" log), and oneduring the post_test (called the "after" log).
|
|
This includes messages from the kernel (if a logger is transferring the messagesfrom the kernel to the system log), as well as messages from programsrunning on the system (that output to their status to the syslog).
|
This includes messages from the kernel (if a logger is transferring the messagesfrom the kernel to the system log), as well as messages from programsrunning on the system (that output to their status to the syslog).
|
|
The location of the system logs for a test run are in the files: /userdata/logs/<testname>/systemlogs/<target>.<timestamp>.<testnum>.[before|after]
|
The location of the system logs for a test run are in the files: ''/userdata/logs/<testname>/systemlogs/<target>.<timestamp>.<testnum>.[before|after]''
|
|
|
= test log =This is the output produced by the test program itself. It is collected withthe ''report'' and ''report_append'' functions, which save thestandard output from the commands they run into a log file which is retrievedfrom the target at the end of the test.
|
|
The 'parsed' version of the log, is one that has been grep'ed for a regular expression using log_compare. The parsed log should consist of individual lines showing a pass, fail or skip for each sub-test in a test suite.
|
The 'parsed' version of the log, is one that has been grep'ed for a regular expression using log_compare. The parsed log should consist of individual lines showing a pass, fail or skip for each sub-test in a test suite.
|
|
The location of the test log for a test run is in the file:/userdata/logs/<testname>/systemlogs/<target>.<timestamp>.<testnum>.log
|
The location of the test log for a test run is in the file:''/userdata/logs/<testname>/systemlogs/<target>.<timestamp>.<testnum>.log''
|
|
The location of the parsed test log for a test run is in the file:/userdata/logs/<testname>/systemlogs/<target>.<timestamp>.<testnum>.{4}.log
|
The location of the parsed test log for a test run is in the file:''/userdata/logs/<testname>/systemlogs/<target>.<timestamp>.<testnum>.{4}.log''
|
|
|
= new locations =In the Jenkins integration refactoring (early 2017), the log directories werechanged as follows: * fuego logs: * /fuego-rw/logs/<testname>/<target>.<timestamp>.<buildnum> * run.json - saved by ftc:run_test * devlog.txt - written by report_devlog * syslog.before.txt - saved by ov_rootfs_logread (dump_syslogs) * syslog.after.txt - saved by ov_rootfs_logread * testlog.txt - saved by get_testlog * testlog.p.txt - created by * consolelog.txt - created by ftc * jenkins files: * /var/lib/jenkins/jobs/<jobname>/builds/buildnum * build.xml * changelog.xml * log - console log created by Jenkins
|
- per-test data files: * /fuego-rw/logs/<testname> * plot.data * plot.png * metrics.json - list of metrics for this test * <testname>.<metric>.json - list of data values for a metric * <testname>.info.json - list of meta-data for each data line (device, firmware, platform data points)
|
* per-test data files: * /fuego-rw/logs/<testname> * plot.data * plot.png * metrics.json - list of metrics for this test * <testname>.<metric>.json - list of data values for a metric * <testname>.info.json - list of meta-data for each data line (device, firmware, platform data points)
|